一、选择题
1. 有以下程序:
>
程序运行后的输出结果是( )。
A.3,3,3
B.2,2,3
C.1,2,3
D.1,1,3
答:A 【解析】仅分配了一份内存空间,但是指针a 、b 和c 同时指向这个空间。
2. 以下选项中,合法的C 语言实数是( )。
答:B
【解析】实型常量指数形式由十进制数加阶码标志符号)组 成。为指数形式实数,B 项正确。阶数不是整数,A 项错误。E13阶码标志前缺少十进制数,C 项错误。
3. 有以下程序:
缺少阶码,D 项错误。 或以及阶码(只能为整数,可以带
程序的运行结果是( )。
A.7, 4, 2
B.8, 7, 5, 2
C.9, 7, 6,4
D.8,5, 4,2
答:D
【解析】题目中的for 循环等价于:
第一次循环,x=8, for 循环条件为真,8%3=2, 不等于0, 则if 条件表达式为真,执行第一个输出语句,先输出x 的值8, 然后将x 的值减1, 此时x=7。然后执行continue 语句结束本次循环,执行x--表达式,得x=6
第二次循环,x=6, for 循环条件为真,6%3=0, 则if 条件表达式为假,执行第二个输出语句,先将x 的值减1得x=5, 然后输出x 的值5, 执行x —表达式,得x=4。
第三次循环,x=4, for 循环条件为真,4%3=1,不等于0, 则if 条件表达式为真,执行第一个输出语句,先输出x 的值4,然后将x 的值减1,此时x=3,然后执行continue 语句结束本次循环,执行x —表达式,得x=2。
第四次循环,x=2, for 循环条件为真,2%3=2, 不等于0, 则if 条件表达式为真,执行第一个输出语句,先输出x 的值2, 然后将x 的值减1,此时x=l, 执行X-表达式,得x=0, for 循环条件为假,循环结束。
4. 有以下程序(说明:字母A 的ASCII 码值是65):
程序运行后的输出结果是( )。
A.BY
B.BT
C.YT
D.YE
答:D
【解析】函数只会输出ASCII 码值为奇数的字母,执行fun (a )时,依次取出a □中的字母,当取第一个字母8时,因为8的ASCII 码值为66, 所以不会输出B , 字母Y 的ASCII 码值为89, 字母T 的ASCII 码值为84,字母E 的ASCII 码值为69,所以最后输出字母YE 。
5. 关于C 语言的变量名,以下叙述正确的是( )。
A. 变量名不可以与关键字同名
B. 变量名不可以与预定义标识符同名
C. 变量名必须以字母开头
D. 变量名是没有长度限制的
答:A
【解析】合法的标识符由字母(大、小写均可)、数字和下划线组成,并且必须以字母或下划线开头。关键字是指被C 语言保留的,不能用作其他用途的标识符,它们在程序中都代表着固定的含义,用户不可重新定义, A 项正确。预定义标识符是系统已经有过定义的标识符,用户可以
B 项错误。 变量名除了以字母开头以外,重新定义,所以可以作为变量名,还可以以下划线开头,
C 项错误。变量名没有长度限制,但不可超过编译器可以辨识的范围,D 项错误。
6. C 源程序中不能表示的数制是。
A. 二进制
B. 八进制
C. 十进制
D. 十六进制
答:A
【解析】C 语言中整型常量可以是十进制数、八进制数、十六进制数,虽然运行方式以二进制数运行,但整型常量不包括二进制数。
7. 有以下程序: