hdoj 2031 进制转换
进制转换
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 30304 Accepted Submission(s):
16811
Problem Description
输入一个十进制数N,将它转换成R进制数输出。
Input
输入数据包含多个测试实例,每个测试实例包含两个整数N(32位整数)和R(2<=R<=16,
R<>10)。
Output
为每个测试实例输出转换后的数,每个输出占一行。如果R大于10,则对应的数字规则参考16进制(比如,10用A表示,等等)。
Sample Input
7 2
23 12
-4 3
Sample Output
111
1B
-11
此题主要考察十进制转换为其他进制,利用十进制数短除所要转换的进制每次记录余数,最后倒序输出余数
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | #include<stdio.h> #include<string.h> int main() { int n,m,j,i,s,y,l2; char b[100]; while ( scanf ( "%d %d" ,&n,&m)!=EOF) { y=0;l2=0;j=1; s=0; while (n!=0) { if (n<0) //考虑n为负数的情况 { s=n; n=-n; } y=n%m; //求每次短除m后的余数 n=n/m; //求每次短除m后的商 if (y>=10) { l2=j; //记录字符串长度 b[j]=y+55; //将数字转换为字符 j++; } else { l2=j; b[j]=y+48; j++; } } if (s<0) printf ( "-" ); for (i=l2;i>=1;i--) { printf ( "%c" ,b[i]); } printf ( "\n" ); } return 0; } |
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从二进制到误差:逐行拆解C语言浮点运算中的4008175468544之谜
· .NET制作智能桌面机器人:结合BotSharp智能体框架开发语音交互
· 软件产品开发中常见的10个问题及处理方法
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· C# 13 中的新增功能实操
· Ollama本地部署大模型总结
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(4)
· langchain0.3教程:从0到1打造一个智能聊天机器人
· 2025成都.NET开发者Connect圆满结束