当前位置: 代码迷 >> C语言 >> 进制转换用栈实现
  详细解决方案

进制转换用栈实现

热度:99   发布时间:2007-12-16 22:48:44.0
进制转换用栈实现
#include<stdio.h>


       typedef      struct
     {int a[10];
      int top;}stack;

     void main()
     {
       void push(stack s,int n);
       int n;
       stack s;
      // s.a[]={0};s.top=0;


       printf("input a hex number:\n");

       scanf("%d",&n);
       while(n)
       { push(s,n%16);
         n/=16;
       }
       while(s.top!=0)
       {printf("%d",s.a[top]);top--;}
     }
     void push( stack s,int n)
     { s.a[top]=n;top++;
     }

有错误 怎么办
搜索更多相关的解决方案: 进制  

----------------解决方案--------------------------------------------------------
问题出在那个 ”Top“ 中,它是结构体中的一个数据成员,引用时要加上结构体名。。
所以LZ 把上面的 ”Top“  都改成 "s.Top "  就可以了。。。。
----------------解决方案--------------------------------------------------------
  相关解决方案