常量可分为5类:它们分别是 整形常量 实型常量 字符常量 字符串常量 符号常量
(1)整形常量 如 100, 123, 0, -41 等
(2)实型常量 有两种表示形式
第一种,由数字和小数点组成 如123.01,0.345,-32.1,0.0, 注意 .47也是 合法的 实型常量 前面的零省略未写
第二种:指数形式 如12.34E3(代表12.34 * 10^3)12.34乘10的三次方 -35.87e-25。 e或E代表以10为底的指数,但应注意的是 e或E 之前 必须有数字,且 e或E 之后 必须为 整数 不能写成 E8, 25e3.1
(3)字符常量 字符常量也有两种
第一种 普通字符 用单撇号括起来的一个字符 如 ‘a’,'B',‘3’,‘!’,等,注意单撇号内只能有 一个字符 如‘er’是不合法的
第二种 转义字符 常考的也是这种 ' \' ', ' \n' ,'\b' ,'\02' 举几个不合法的例子 '\019' 代表八进制数 19 ,而组成八进制的基数是从 0~7
(4)字符串常量 用双撇号 (不常考) “123”,‘cha’,"45yu" 等(5)符合常量 #define T 14 经过以上指定后 本文件从此行开始所有的 T 换为 14
以下选项中,合法的一组C语言数值常量是______。
A.12. 0Xa23 4.5e0
B.028 .5e-3 -0xf
C..177 4e1.5 0abc
D.0x8A 10,000 3.e5
选择 A
C语言中八进制整型常量的开头是数字0,十六进制整型常量的开头数字是0x。C语言中的实型常量有两种表示形式:小数形式,小数形式表示的实型常量必须要有小数点;指数形式,以“e”或“E”后跟一个整数来表示以10为底数的幂数,且规定字母e或E之前必须要有数字,且e或E后面的指数必须为整数。B选项中028错误,八进制中没有数字8。C选项中4e1.5中e后面的指数不是整数。D选项中3.e5小数点后面缺少数字。