数据结构实验之栈与队列一:进制转换
Description
输入一个十进制非负整数,将其转换成对应的 R (2 <= R <= 9) 进制数,并输出。
Input
第一行输入需要转换的十进制非负整数;
第二行输入 R。
Output
输出转换所得的 R 进制数。
Sample
Input
1279
8
Output
2377
#include <stdio.h>
#include <stdlib.h>
int main()
{
int s[101];
int a,r,t=0,b=0;//t=0,b=0,为空栈
scanf("%d%d",&a,&r);//要转换的数a,转换成r进制
if(a==0)
printf("%d\n",a);//0转化任何进制都为0
else
{
while(a!=0)
{
s[t++]=a%r;//进栈
a=a/r;
}
while(t!=0)
printf("%d",s[--t]);//出栈
}
return 0;
}
s[t]=a%r;
t++;
//等同
s[t++]=a%r;
/
printf("%d",s[t-1]);
t--;
//等同
printf("%d",s[--t]);