convert.c

来自「数据结构实验与学习指导」· C语言 代码 · 共 37 行

C
37
字号
/* convert.c */
typedef int ElemType;
#include"SQstack.h"                                /*调用顺序栈基本操作头文件*/
void conversion(int N,int R)                      /*进制转换*/
{SeqStack S;
   int x;
   Status i;
   InitStack_Sq(&S);
   while(N)
    {
      Push_SeqStack(&S,N%R);                        /*进栈操作*/
      if(i==OVERFLOW)
       { printf("\n栈已满不能进行入栈操作!");
         return;}
       N=N/R;
      }
  printf("结果是:\n");
  while(!Empty_Sq(&S))           /*当栈不为空时,出栈操作*/
    { Pop_SeqStack(&S,&x) ;
      if(i==OVERFLOW)
        { printf("\n栈为空不能进行出栈操作!");
         return ;}
     else
       printf("%x",x);
     }/*if*/
}
void main()
{   int Num,r;
    printf("请输入要进行转换的数据和数制:(例如: 45,8 )\n");
    /*输入要转换的数据和转换的进制*/
    scanf("%d,%d",&Num,&r);
    if ((Num>=0)&&(r>0))
      conversion(Num,r);
    else  printf("输入错误!");
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?