如题
还有具体算法
我要纯手工的算法
10进制30000和69800转为16进制是多少
答案:2 悬赏:80 手机版
解决时间 2021-03-09 12:31
- 提问者网友:未信
- 2021-03-08 23:36
最佳答案
- 五星知识达人网友:你哪知我潦倒为你
- 2021-03-09 00:54
30000先转化为二进制:
30000%2 0 (30000%2是30000除以2求余数0)
15000%2 0
7500%2 0
3750%2 0
1875%2 1
937%2 1
468%2 0
234%2 0
117%2 1
58%2 0
29%2 1
14%2 0
7%2 1
3%2 1
1%2 1
然后从下向上写出二进制数: (写出余数值)
111010100110000
接下来从右到左四位分为一组:
111 0101 0011 0000
对应转换为十六进制数:
0111 7
0101 5
0011 3
0000 0
则最后得十六进制数为: 7530
7*16^3+5*16^2+3*16=30000
用同样的的计算方法不难得到十进制69800转化为十六进制为110A8
30000%2 0 (30000%2是30000除以2求余数0)
15000%2 0
7500%2 0
3750%2 0
1875%2 1
937%2 1
468%2 0
234%2 0
117%2 1
58%2 0
29%2 1
14%2 0
7%2 1
3%2 1
1%2 1
然后从下向上写出二进制数: (写出余数值)
111010100110000
接下来从右到左四位分为一组:
111 0101 0011 0000
对应转换为十六进制数:
0111 7
0101 5
0011 3
0000 0
则最后得十六进制数为: 7530
7*16^3+5*16^2+3*16=30000
用同样的的计算方法不难得到十进制69800转化为十六进制为110A8
全部回答
- 1楼网友:独钓一江月
- 2021-03-09 02:21
#include
#include
void ExchangToBin(int n,int m)//n是需要转换的数,m是转换到的进制
{
int i=0,flag =0;
int temp,count;
count = n;
printf("10进制数%d转换到%d结果为: ",n,m);
while (n!
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯