一、选择题
1. 有以下程序:
程序运行后的输出结果是( )。
答:A
【解析】disp ( )函数中,存在while 循环,当指针指向地址单元存储的字符不等于空字符
串输出此字符,否则退出循环,输出在主函数中调用disp ( )函数时,字符并且再将返先全部输出,当指针指向字符串最后空字符时,退出循环,输出回输出。由于函数返回类型为所以返回的码0, A项正确。
2. 字符数组a 和b 中存储了两个字符串,判断字符串a 和b 是否相等,应当使用的是
( )。
A. B. C. D.
答:A
【解析】C 语言中,判断字符串是否相等,使用字符串比较函数
符
3. 函数调用语句:
A.1
B.4
C.5
D.2
答:D 含有的实参个数是( )。 故答案为A 选项。 不能使用相等操作【解析】函数fun 参数列表中有两个参数,
分别是逗号表达式
第 2 页,共 33 页 的值与
的值。
4. 有如下程序:
程序运行后的输出结果是( )。
A.4,4
B.0,1
C.1,4
D.0,4
答:A
【解析】程序执行过程为:定义整型变量a=0与指针ptr ,使指针指向变量a 。对指针指向的变量进行赋值a=3,将指针所指向变量加1,并赋值给a=4,此时指针依然指向变量a ,输出a 与指针指向的变量值:4,4,故A 项正确。
5. 有以下程序
程序的输出结果是( )。
A.7 1
B.4 3
C.3 4
D.0 0
答:A
【解析】main 函数中变量c 和d 以传地址的方式传递参数,形参的改变会导致实参的改变。
6. 以下不能正确表示代数式
第 3 页,共 33 页
的C 语言表达是( )。
答:D 【解析】与/优先级相同,所以采用左结合的方式。D 项若改为:
7. 有如下程序:
程序运行后的输出结果是( )。
A.2,
B.2, 3,
C.3,
D.1,
答:A
【解析】在输出函数中,调用了函数。函数作用是定义一个静态变量对变量init 进行叠加形参data 的值,并将结果作为函数的返回值。在main ( )函数中,实参i=l传递给sum ( )函数的形参data ,因此输出为2。
8. 以下叙述中正确的是( )。
A.break 语句不能用于提前结束for 语句的本层循环
B. 使用break 语句可以使流程跳出switch 语句体
C.continue 语句使得整个循环终止
D. 在for 语句中,continue 与break 的效果是一样的,可以互换
答:B
【解析】B 项正确,break 语句可以跳出switch 语句和循环。A 项错误,break 语句在for 循环
C 项错误,continue 语句的作用是跳过本次循环体中余下尚未执行的语句,内部的作用是跳出循环;
立刻进行下一次的循环条件判定,可以理解为仅结束本次循环,并没有使整个循环终止;D 项错误,continue 和break 的效果完全不同。
则为正确。
第 4 页,共 33 页