一、选择题
1. 以下选项中不能作为C 语言合法常量的是( )。
答:A
【解析】常量包括整型常量、实型常量、字符常量和字符串常量等。B 项,
式的常量,是合法的;C 项,是字符串常量;D 项,
单引号表示字符常量,不能包含字符串,若要包含字符串,需用双引号。
2. 有以下程序
程序的运行结果是( )。
答:D
【解析】首先用函数的方式开打文件然后调用两次fwrite 函数将数组a 的5个元素,依次输出到文件fp 中,共10个字节,关闭文件。再次打开文件,使用文件指针指向文件的开头,调用fread 函数从文件中读取这10个字节的数据到数组a 中。
3. 设有定义:则以下表达式值为3的是( )。
第 2 页,共 33 页 是指数形是表示八进制数整型常量。A 项错误,
答:A
【解析】A 项正确,结果为3,
满足题意;B 项为0, C项为2, D项等同于C 项。
4. 已知大写字母A 的ASCII 码是65, 小写字母a 的ASCII 码是97。以下不能将变量c 中的大写字母转换为对应小写字母的语句是( )。
B.c=c+32
答:A
【解析】A 项,模26运算后得到0~25之间的数,再与V 相减结果是负数。B 项,ASCII 码表中,同一字母的小写码比大写码数值上大32;C 项,
于C 项。
5. 有以下程序
程序的输出结果是( )。
A. B. C. D.
答:C
【解析】在格式控制中用%%表示,将输出一个%符号。
6. 设有定义:char *c; 以下选项中能够使字符型指针c 正确指向一个字符串的是( )。
答:A
【解析】B 项中
字符型变量,
D 项是在指针定义时为它赋值,否则是不合法的,所以BCD 三项都不正确。A 项定义字符数
第 3 页,共 33 页
表示,A 项可改写成(b )再计算计算的D 项,取值在0~26, 等价 函数是将c 定义为一个字符数组的数组名,C 项中是将c 定义为一个
组再将字符数组str 的首地址赋给字符型指针c ,正确。
7. 以下不是C 语言字符型或字符串常量的是( )
A.
B.
C.
D.
答:C
【解析】字符常量是用单引号把一个字符括起来,转义字符常量以一个反斜线开头后跟一个特定的字符或者对应的ASCII 值表示。字符串常量是由双引号括起来的一串字符。C 项既不是字符型常量,也不是字符串常量。AB 两项,均是字符串常量;D 项,是字符型常量。
8. 若变量已正确定义为int 型,要通过语句给a 赋值1,给b 赋值2, 给C 赋值3,以下输入形式中错误的是(u 代表一个空格)( )。
A. B. C. D.
答:B
【解析】格式化输入函数scanf ,每个输入格式说明之间加一个逗号作为通配符,要求除格式控制符以外的字符都要原样输入,逗号为非格式符,需要原样输入,否则就不能正确读入数据。
9. 有以下程序
若想通过键盘输入,使得al 的值为12, a2的值为34, cl 的值为字符a ,c2的值为字符b , 程序输出结果是:12, a , 34, b ,则正确的输入格式是(以下□代表空格,代表回车)( )。
A. B. C. D.
答:A
【解析】因为空格和回车也是字符变量,所以在输入a 和b 时,它们的前面不能有空格和回车,否则将取到空格或者回车,而非a 和b ; int 类型不会取到空格和回车,所以12和34前面可以有空格和回车。在scanf 函数并没有使用通配符逗号,所以输入时不能输入逗号。
10.若有以下定义和语句:
第 4 页,共 33 页