#include
void dec2n(int x,int n)
{
if(x>=n)dec2n(x/n,n);
if(x%n>9)printf("%c",x%n+55);
else printf("%d",x%n);
}
int main()
{
int x,n; //将10进制数x转换为n进制数
scanf("%d%d",&x,&n);
dec2n(x,n);
return 0;
}
新手菜鸟,哪位大神帮忙解释一下这个程序
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- 洛枫丶 2017-11-17 06:24关注
if(x>=n)dec2n(x/n,n)是递归求n进制的每一位,if(x%n>9)如果这是一个大于十进制的进制,那么把超过10的位替换成字母)printf("%c",x%n+55),没超过10的位原样输出else printf("%d",x%n);
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 gradio的web端页面格式不对的问题
- ¥15 求大家看看Nonce如何配置
- ¥15 Matlab怎么求解含参的二重积分?
- ¥15 苹果手机突然连不上wifi了?
- ¥15 cgictest.cgi文件无法访问
- ¥20 删除和修改功能无法调用
- ¥15 kafka topic 所有分副本数修改
- ¥15 小程序中fit格式等运动数据文件怎样实现可视化?(包含心率信息))
- ¥15 如何利用mmdetection3d中的get_flops.py文件计算fcos3d方法的flops?
- ¥40 串口调试助手打开串口后,keil5的代码就停止了