1 进制转换 1.1 利用栈的特点,将用户输入的十进制数转换为二进制数。 #include<stdio.h> #include<stdlib.h> #include<malloc.h> #define M 100 typedef int datatype; typedef struct{ datatype data[M]; int top; }seqstack; void InitStack(seqstack *s){ //初始化顺序栈 s->top=-1; } int StackEmpty(seqstack *s){ //判断栈是否为空 (初始化为-1) if (s->top>=0) return 1; else return 0; } seqstack *push(seqstack *s,datatype x){ //元素入栈函数 if (s->top==M-1) return NULL; else { s->top++; //先加再入 s->data[s->top]=x; } return s; } datatype pop(seqstack *s){ //元素出栈函数 datatype x; x=s->data[s->top]; s->top--; return x; } void main(){ // 对于输入的任意一个非负十进制整数,打印输出与其等值的二进制数 seqstack *s; datatype n,e; int i=0,j=0; scanf(&#