数据结构实验之栈一:进制转换
输入一个十进制整数,将其转换成对应的R(2<=R<=9)进制数,并输出。
输入
第一行输入需要转换的十进制数;
第二行输入R。
第二行输入R。
输出
输出转换所得的R进制数。
示例输入
1279 8
示例输出
2377
提示
View Code
1 #include<stdio.h> 2 #define maxsize 100 3 int top = 0 ; 4 int push(int stack[], int x) 5 { 6 if(top>maxsize) 7 return 0 ; 8 stack[top++] = x ; 9 return 1 ; 10 } 11 int pop(int stack[]) 12 { 13 top-- ; 14 return stack[top] ; 15 } 16 int stackempty() 17 { 18 if(top==0) 19 return 1 ; 20 else 21 return 0; 22 } 23 int main() 24 { 25 int n, r, s[100], m ; 26 scanf("%d\n %d", &n, &r) ; 27 while(n!=0) 28 { 29 push(s,n%r) ; 30 n/=r ; 31 } 32 while(!stackempty()) 33 { 34 m = pop(s) ; 35 printf("%d", m) ; 36 } 37 printf("\n") ; 38 return 0 ; 39 }