一道C++题目,有疑问。

[复制链接]
查看11 | 回复5 | 2013-8-31 10:25:57 | 显示全部楼层 |阅读模式
这道题考的是8进制和16进制。整数前面加“0”,是八进制;加“0x”,表示16进制。八进制的数字,106,换算成10进制是:1*8^2+6=70(8^2表示8的2次方,之所以1乘以8的2次方,是因为1是处在第三位上,后面还有两位的说,比如十进制的100=1*10^2)同理,16进制的数字11=1*16^1+1=17...
回复

使用道具 举报

千问 | 2013-8-31 10:25:57 | 显示全部楼层
i=0106;以0开头表示是八进制数,i=1*8^2+6=64+6=70j=0x11;以0x开头表示是十六进制数,j=1*16+1=17输出的是十进制数...
回复

使用道具 举报

千问 | 2013-8-31 10:25:57 | 显示全部楼层
0x11十六进制转化成十进制就是17了,至于o106八进制转化成十进制也就是70了...
回复

使用道具 举报

千问 | 2013-8-31 10:25:57 | 显示全部楼层
int i=0106, 数字以0开头,表示八进制,输出结果转换为10进制就是:70int j=0x11, 以0x开头,表示十六进制,输出结果转换为10进制就是:17...
回复

使用道具 举报

千问 | 2013-8-31 10:25:57 | 显示全部楼层
0106 //表示是八进制数,转换成int的话,就是1*8^2+6*8^0=64+6=70;0x11 //表示是十六进制数,转换成int的话,就是1*16^1+1*16^0=16+1=17...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行