1 1.以下有4 组用户标识符,其中合法的一组是( )。 A) For -sub Case B) 4d DO Size C) f2_G3 IF abc D) WORD void define 答案C 解析:标识符的命名规则:由字母、数字、下划线组成,第一个字符必须是字母或者下划线,标示符的命名不能同C 语言的关键字相同(关键字表格教材第6 页) A-sub 错误;B,4d 错误;Dvoid 是关键字。注意:关键字都是小写的,如果大写就不是关键字了。 2、以下选项中合法的字符常量是( )。 A) “B” B) „\010‟ C) 68 D) D 答案B 解析:字符常量使用‘’括起来的。参考课本 24 页 转义字符书写方法:1.\加上字母;2.\加上 1~3 位八进制数,这里八进制数以0 开头;3.\加上 1~2 位十六进制数,这里十六进制数以x 开头。例如: ‘\n’第一种方法 ‘\012’第二种方法 ‘\xa’ 第三种方法 4、设变量a 是整型,f 是实型,i 是双精度型,则表达式 10+a+i*f 值的数据类型为( )。 A) int B) float C) double D) 不确定 答案:C,按照低精度转换成高精度的原则(教材34 页) 5、.以下程序的输出结果是 main() { char c=‘z'; printf(“%c”,c-25); } A) a B) Z C) z-25 D) y 答案:A 解析:方法一:‘z’对应的ASCII 码是122,122-25=97,输出的是%c,即字符的形式,97对应小写字母a。 方法二:与小写字母z 相差 22 的就是小写字母a 6、设有 int x=11; 则表达式 (x++ * 1/3) 的值是( )。 A) 3 B) 4 C) 11 D) 12 答案:A 解析:x++,先取 x 的值再乘以1 除以3,11*1=11,11/3=3 因为都是整形的数据,因此相除之后的结果应该为整形。 2 7、假设所有变量均为整型,则表达式(a=2, b=5, b++, a+b)的值是( )。 A) 7 B) 8 C) 6 D) 2 答案:B 解析:逗号表达式的值为表达式最右边式子的值,计算过程 a=2,b=5,b=b+1=6,a+b=2+6=8;最右边式子是 a+b 其值为 8,因此整个逗号表达式的值为 8. 8、以下程序的输出结果是( )。 #include main() { int a=10,b=10; printf(“%d,%d\n”,a++,--b); } A) 10,10 B) 8,10 C) 10,9 D) 8,9 答案:C 解析:本题是++,--运算的使用,首先看输出函数的输出项,从右边开始往左计算,--b,--在 b 的前面,因此先进行 b-1 运算,再输出 b 的值,b 输出值为 9;a++,++在 a 的后面,先输出 a 的值再进行 a+1 运算...