一、单选题(共 15 道试题,共 75 分。)V 1. 有两个字符数组a、b,则以下正确的输入语句是()。
A. gets(a,b);
B. "scanf(""%s%s"",a,b);"
C. "scanf(""%s%s"",a,b);"
D. "gets(""a""),gets(""b"");"
满分:5 分
2. 下面正确的字符常量是()
A. \X17'
B. \80'
C. \\'
D. """\n"""
满分:5 分
3. 下列四组选项中,均不是C语言关键字的选项是()。
A. defineIFtype
B. getccharprintf
C. includescanfcase
D. whilegopow
满分:5 分
4. 已知字母A的ASCII码为(65)10,变量ch1为字符型,则执行语句ch1='A'+'6'-'3';后,ch1中的值为()。
A. D
B. 68
C. 一个不确定的值
D. C
满分:5 分
5. C语言中,下列说法正确的是()
A. 不能使用do…while语句构成循环。
B. do…while语句构成的循环必须用break语句才能退出。
C. do…while语句构成的循环,当while语句中的表达式值为非0结束循环。
D. do…while语句构成的循环,当while语句中的表达式值为0结束循环。
满分:5 分
6. 若有定义:intA[3][4];能表现数组元素A[1][1]的是()
A. (A[1]+1)
B. *(A[1][1])
C. (*(A+1)[1])
D. *(A+5)
满分:5 分
7. C语言中的构造类型数据包括()
A. 数组类型、构造体类型和共用体类型
B. 数组类型、结构体类型和指针类型
C. 数组类型、结构体类型和枚举类型
D. 数组类型、结构体类型和空类型
满分:5 分
8. 下面四个选项中,均是正确的数值常量或字符常量的选项是()。
A. 0.00f8.9e''
B. """a""3.9E-2.51e1'\""'"
C. 3'0110xFF000a
D. 001E140xabcd2e250.I14
满分:5 分
9. 以下不正确的C语言标识符是()。
A. int
B. a_1_2
C. ab1exe
D. _x
满分:5 分
10. 若有变量说明:inta=0,b=0,c=0;,以下符合C语言语法的赋值表达式是()。
A. a=9+b+c=a+9
B. a=9+b;c=a+9;
C. "a=(9+b,b++)"
D. a=9+b++=a+7
满分:5 分
11. 有定义:floatx=3.14,*p;下列错误的语句是()
A. p=3.14
B. p=x
C. *p=3
D. *p=x
满分:5 分
12. 以下是正确的C语言标识符是()。
A. #define
B. _123
C. %d
D. \n
满分:5 分
13. 下列关于switch语句和break语句的结论中,只有()是正确的。
A. break语句是switch语句的一部分
B. 在switch语句中可以根据需要使用或不使用break语句
C. 在switch语句中必须使用break语句
D. "以上三个结论有两个是正确的"
满分:5 分
14. 若x为float型变量,则以列程序段结果是()x=1234.6789;printf(“%-2.1f”,x);
A. 输出格式描述符的域宽度不够,不能输出
B. 输出为1234.7
C. 输出为1234.6
D. 输出为-1234.6
满分:5 分
15. 下面的叙述,不正确的是()。
A. 宏名无类型,其参数也无类型
B. 宏定义不是C语句,不必在行末加分号
C. 宏替换只是字符替换
D. 宏替换定义命令必须写在文件开头
满分:5 分