C语言哪位救呀谢谢

来源:百度知道 编辑:UC知道 时间:2024/06/15 19:12:13
用8进制和16进制表示下面各数
(1)10;(2)32;
(3)75;(4)-617
(5)-111;(6)2483;
(7)-28654;(8)21003;

我帮你写了个程序,可以自己算出答案来,希望能帮助你。

#include <stdio.h>

void main()
{
int data[8] = {10,32,75,-617,-111,2483,-28654,21003};

for(int i=0;i<8;i++)
{
printf("(%d) %d(10进制) = %o(8进制) = %x(16进制)\n",i+1,data[i],data[i],data[i]);
}
}

另外,我附上运行后的结果:
(1) 10(10进制) = 12(8进制) = a(16进制)
(2) 32(10进制) = 40(8进制) = 20(16进制)
(3) 75(10进制) = 113(8进制) = 4b(16进制)
(4) -617(10进制) = 37777776627(8进制) = fffffd97(16进制)
(5) -111(10进制) = 37777777621(8进制) = ffffff91(16进制)
(6) 2483(10进制) = 4663(8进制) = 9b3(16进制)
(7) -28654(10进制) = 37777710022(8进制) = ffff9012(16进制)
(8) 21003(10进制) = 51013(8进制) = 520b(16进制)