PTA超级水题大集合-进制转换

6-4 进制转换 (12分)
输入一个十进制数N,将它转换成R进制数输出。

输入格式:

每行输入一个正整数n(1<=n<=1000)和正整数r(1<=r<=16)

输出格式:

每行输出一个由十进制转化而成的R进制数字。

函数接口定义:

在这里描述函数接口。例如:
int cn(int n,int r);

在这里解释接口参数。例如:其中 n 和 r 都是用户传入的参数。 n和’r’ 的值不超过int的范围; 函数须返回r进制数的位数。

裁判测试程序样例:

在这里给出函数被调用进行测试的例子。例如:
#include<math.h>
char s[32];
int cn(int n,int r);
int main()
{
int n,r,i;
while(~scanf("%d%d",&n,&r))
{
if(n<0)
printf("-");
n=fabs(n);
i=cn(n,r);
while(i–)
printf("%c",s[i]);
printf("\n");
}
return 0;
}

/* 请在这里填写答案 */

输入样例:

在这里给出一组输入。例如:

3 2

输出样例:

在这里给出相应的输出。例如:

11

在这里插入代码片
int cn(int n,int r)
{
    int a[1010];
int i=0;
while(n!=0)
{
    a[i]=n%r;
    n=n/r;
    i++;
}
int l=i;
for(int j=0;j<i;j++)
    for(i=i-1;i>=0;i--)
    {
        if(a[i]>9)
        {
            s[i]=a[i]+55;
        }
        else
        {
            s[i]=a[i]+'0';
        }
    }
    return l;
}
发布了10 篇原创文章 · 获赞 1 · 访问量 341

猜你喜欢

转载自blog.csdn.net/Starry_Sky_Dream/article/details/105120456