void conversion()
{//对于输入的任意一个非负十进制整数,打印输出与其等值的二进制数
SqStack S;
unsigned n;
SElemType e;
InitStack(&S);
printf("输入整数n:");
scanf("%u",&n);
printf("\n");
while(n!=0)
{
Push(&S,n%2);
n=n/2;//此处可以任意修改为其它进制数,如八进制则改为8
}
while(!StackEmpty(S))
{
Pop(&S,&e);
printf("%d",e);
}
}
void main()
{
conversion();
printf("\n");
}
注意十进制与十六进制之间转换的算法,出栈之后要判断是否大于9,如果是,则要用字符的形式输出。
十进制数与其它进制数转换的一种算法
最新推荐文章于 2022-03-20 19:31:47 发布