数据结构实验之栈一:进制转换
Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^
题目描述
输入一个十进制整数,将其转换成对应的R(2<=R<=9)进制数,并输出。
输入
第一行输入需要转换的十进制数;
第二行输入R。
第二行输入R。
输出
输出转换所得的R进制数。
示例输入
1279 8
示例输出
2377
#include<stdio.h>
void f(int number,int R)
{
int Stack[1000];
int p=0;
int flag=0;
if(number<0)
{
number*=-1;
flag=1;
}
while(number)
{
if(number%R>=0&&number%R<=9)
Stack[p++]=number%R;
else
Stack[p++]=number%R-10+'A';
number/=R;
}
p--;
if(flag)printf("-");
while(p>=0)
if(Stack[p]>=0&&Stack[p]<=9)
printf("%d",Stack[p--]);
else
printf("%c",Stack[p--]);
printf("\n");
}
int main()
{
int number,R;
while(~scanf("%d%d",&number,&R))
{
f(number,R);
}
return 0;
}