12)以下选项中可作为C语言合法整数的是

12)以下选项中可作为C语言合法整数的是
A)10110B B)0386 C)0Xffa D)x2a2

只有答案C正确。
A)不是数的表示法,二进制数确实不能直接用在C语言源程序中,但是10110也不能说就是二进制数,也可以是“一万零一百一十”,不过错并不仅在这,还在于后面的B,所以它啥也不是。
B)只能说是一个由数字字符组成的串(没有引号),在日常生活中虽可以当作386这个数,但是C有规定,以0开头的数是八进制,这样再看它就不符合C的规定了,因为八进制数只能由“01234567”这内个数组成,并且前面必须加0以示区分。
C)0X开头是十六进制数,转换为十进制是4090是C的int型数。
D)有点迷惑人,但是前面没有0,不是十六进制的数,只是一个标识符。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-08-27
C
A c语言中没二进制
B 0代表八进制 所以数字最大不超过八
D 前加个o代表十六进制本回答被网友采纳
第2个回答  2015-11-01
C语言里合法整数有三种进制表示
1、八进制 以0开头, 数的每一位不能大于7
2、十进制 普通的整数,都是十进制, 数的每一位不能大于9
3、十六进制 开头以0x,或0X 开头,数的每一位不能大于F
第3个回答  2019-11-29
a不对,因为c语言没有后缀为字母b的整型常量。c语言不支持二进制整型常量。
b不对,因为0开头的是8进制数,8进制数字只能是0~7,可是中间出现了数字8。
c不对,数值必须以数字开头,16进制数以0x开头,但这个是字母x开头的。
d是合法的16进制整数。
第4个回答  2009-08-21
b