一、选择题
1. 若有以下程序
则程序的输出结果是( )。
A.2, 3
B.0, 2
C.1, 2
D.1, 3
答:D 【解析】
2. 设有函数定义:
( )。
A.
B.
C.
D.
答:A 1. 是先判定a 是否为0, 不管判定结果如何,都执行a++。 则以下对函数sub 的调用语句中,正确的是
【解析】函数的参数有两个,第一个是整型,第二个是字符类型,在调用函数时,实参必须一个是整型,一个是字符型相容的类型(整型)。A 项中97为字符传入函数,A 项正确。B 项
的码,可以作为字符不是合法字符,字符单引号里面只能有一个字符,B 项错误。函数sub 返回类型为空,即不返回任何值,故C 项中将函数返回值赋给n 是不正确的调用方法,C 项错误。D 项为字符串,也不是合法的字符,D 项错误。
3. C 源程序中不能表示的数制是( )。
A. 二进制
B. 八进制
C. 十进制
D. 十六进制
答:A
【解析】C 语言中整型常量可以用十进制、八进制数、十六进制数来表示。虽然计算机只能
识别二进制数,但二进制不能用来表示整型常量。
4. 有以下定义:
inta ;
longh ;
double x,y ;
则以下选项中正确的表达式是( )。
答:C
【解析】C 项正确,(int )(x-y )是把x-y 得到的浮点数强制转换成整型。A 项错误,a*y结果是浮点数,不能参与模运算;B 项错误,C 语言中没有<>运算符;D 项错误,x+y是右值,不能给其赋值。
5. 以下选项中,能用作数据常量的是( )。
答:D
【解析】A 项错误,十六进制数用数学0和字符x (或大写字母X )开头;B 项错误,八进制整数常量以数字0开始,有效数字为0〜7; C项错误,C 语言中实型常量有两种表示:小数形式和指数形式。指数形式中,字母e (或E )之前必须要有数字,且后面的指数必须为整数。
6. 有以下程序:
程序运行的结果是( )。
A.1
B.2
C.3
D.4
答:B
【解析】本题主要考查函数的递归调用。fun 函数的功能是:当b 的值为零时,返回此时a 的值;否则,返 回即将a 和b 的值分别减1后返回
fun 函数的本质是返回a-b 的值,因此最终的结果为2。
7. 若有说明语句
:
A.2个字符
B.1个字符
C.3个字符
D. 说明语句不合法
答:B 则变量c 中存放的是( )。
【解析】用一对单引号括起来的单个字符为字符常量,以“\”开头的转义字符也是字符常量。“\”后可以为某些单个字符,也可以为八进制或十六进制数字,故变量c 中存放的是一个字符。
8. 有如下程序:
程序运行后的输出结果是( )。
A.A45D78
B.ABC678
C.34CD78
D.34AB78
答:A
【解析】本题执行过程为:if 条件不成立执行else 函数体,i%3=l, if 输出字符A ; i=l,
条件成立输出字符4; i=2, i%3=2, if 条件成立输出字符5; i=3, if 条件不成立,输出字符D ; i=4和i=5时,分别输出字符7与8; i=6退出for 循环。所以程序运行后输出结果为A45D78, 故A 项正确。
9. 若有定义语句
执行了之后,输入语句正确的是( )。
A. B. C. D.
答:C
,格式控制和地址【解析】输入函数scanf 使用的标准形式是:scanf (格式控制,地址列表)
列表间用逗号隔开。由题知_即px 指向x 的地址,py 指向y 的地址。AD 两项错误,表达式中的x 和y 都需要取地址;B 项,格式控制和地址列表间用逗号隔开。