c语言的scanf怎么用怎么将scanf转换成printf

2023-03-14 13:31 来源: 于桐科技
原标题:每日一道c语言编程题,第29题,将十进制转换成任意进制数
将十进制转换成任意进制数
#include <stdio.h>
// 将十进制数转换成任意进制数
void convert(int num, int base) {
if (num == 0) {
return;
}
convert(num / base, base);
printf("%d", num % base);
}
int main() {
int num, base;
printf("请输入一个十进制数:");
scanf("%d", &num);
printf("请输入要转换的进制数:");
scanf("%d", &base);
printf("%d的%d进制数为:", num, base);
convert(num, base);
printf("\n");
return 0;
}
代码的思路是通过递归的方式将十进制数转换成任意进制数
首先从用户输入中获取要转换的十进制数和目标进制数。
然后调用 convert() 函数进行转换,该函数采用递归的方式进行转换。
在 convert() 函数中,如果要转换的数 num 等于 0,则直接返回,否则继续进行转换。
在每次递归时,先将 num 除以目标进制数 base,得到商和余数,然后递归调用 convert() 函数,将商作为新的参数传入。
最后,在每次递归返回时,输出余数,这样就可以得到转换后的任意进制数。
需要注意的是,该程序假设目标进制数小于等于 10。如果要支持更高的进制数,可以使用字母表示数字。返回搜狐,查看更多
责任编辑:

我要回帖

更多关于 c语言的scanf怎么用 的文章

 

随机推荐