数据结构实验之栈一:进制转换

题目描述
输入一个十进制整数,将其转换成对应的R(2<=R<=9)进制数,并输出。

输入

第一行输入需要转换的十进制数;
第二行输入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 }

 

 
posted @ 2013-01-23 14:02  yelan@yelan  阅读(606)  评论(0编辑  收藏  举报