函数题:输出任意进制的自然数
请编写函数,用递归方法输出任意进制的自然数。
#### 函数原型
c
void PrintRdx(int num, int rdx, int cap);
说明:参数 num 为要输出的自然数,rdx 为数制(2 ~ 36),cap 为大写标记。函数将以 rdx 进制的形式输出自然数 num。若 rdx > 10,则用字母 Aa ~ Zz 来表示值为 10 ~ 35 的数字。若 cap 为 1(真),则输出大写字母,否则输出小写字母。
#### 裁判程序
c
#include <stdio.h>
void PrintRdx(int num, int rdx, int cap);
int main()
{
int n, r, c;
scanf("%d%d%d", &n, &r, &c);
PrintRdx(n, r, c);
putchar('\n');
return 0;
}
/* 你提交的代码将被嵌在这里 */
#### 输入样例1
in
1280 15 0
#### 输出样例1
out
5a5
#### 输入样例2
in
365 16 1
#### 输出样例2
out
16D
要求:不使用循环语句,不调用 printf 函数。
答案:若无答案欢迎评论
提示:
对于十进制而言,输出 25173 时,先输出 2517,再输出最后一位 3。
对于 $$r$$ 进制而言,输出 $$x$$ 时,先输出 $$\lfloor \ x / r \ \rfloor$$, 再输出 $$x \mod r$$。
#### 函数原型
c
void PrintRdx(int num, int rdx, int cap);
说明:参数 num 为要输出的自然数,rdx 为数制(2 ~ 36),cap 为大写标记。函数将以 rdx 进制的形式输出自然数 num。若 rdx > 10,则用字母 Aa ~ Zz 来表示值为 10 ~ 35 的数字。若 cap 为 1(真),则输出大写字母,否则输出小写字母。
#### 裁判程序
c
#include <stdio.h>
void PrintRdx(int num, int rdx, int cap);
int main()
{
int n, r, c;
scanf("%d%d%d", &n, &r, &c);
PrintRdx(n, r, c);
putchar('\n');
return 0;
}
/* 你提交的代码将被嵌在这里 */
#### 输入样例1
in
1280 15 0
#### 输出样例1
out
5a5
#### 输入样例2
in
365 16 1
#### 输出样例2
out
16D
要求:不使用循环语句,不调用 printf 函数。
答案:若无答案欢迎评论
提示:
对于十进制而言,输出 25173 时,先输出 2517,再输出最后一位 3。
对于 $$r$$ 进制而言,输出 $$x$$ 时,先输出 $$\lfloor \ x / r \ \rfloor$$, 再输出 $$x \mod r$$。