一、选择题
1. 有以下程序
:
程序的运行情况是( )。
A. 形成无限循环
B. 输出6
C. 输出5
D. 输出4
答:A
【解析】本题执行过程为:i=l,k=0, i<6成立,执行for 循环:
退出switch
, 成立,执行for 循环:,匹配easel ,k=l, break 匹配case2,k=2,执行continue ,由于其只用于循环结构,退出switch , 且不执行此次for 循环以后的语句,i=2不变,i<6成立,执行下一次for 循环,以后的循环情况完全一致,i=2不会改变,形成无限循环。故A 项正确。
2. 以下叙述正确的是( )。
A.C 程序总是以main ( )作为程序执行的起始行
B.main ( )函数若不带参数,其后面的一对圆括号可省略
C. 函数体内的定义语句和可执行语句允许任意穿插出现
D.C 语言中的语句之间必须用分号作为分隔符
答:A
【解析】main ( )函数后面的括号告诉编译器这是一个函数,不可以省略,排除B 选项;在复合语句中,不仅可以有执行语句,还可以有定义语句,定义语句应该出现在执行语句的前面,故排除C 选项;C 语言中的某些语句可以不用分号,例如if 语句,宏定义,故D 选项错误;答案为A 选项。
3. 有以下程序:
程序的运行结果是( )。
A.5, 0
B.6, 0
C.5, -1
D.6,-1
答:C
【解析】程序执行过程为:执行do …while 的循环体:y=5,判断y 为真,x=l; y=4, x=2; y=3, x=3; y=2,x=4; y=l, x=5; y=0,判断y 为假,退出循环体。判断
y=0为假,y=—1,退出循环。输出x , y 为5,-1, 故C 项正确。
4. 有以下程序:
程序运行后的输出结果是( )。
A.503
B.401
C.500
D.1404
答:A
【解析】函数f 的功能是计算传入的实参x 的平方加一,然后将结果返回。i 初始值为0,
根据即第一次返回值为1,然后执行
的值为20, 即返回值为
5. 有如下程序:
!
程序运行后的输出结果是( )。
A.1123
B.123
条件第二次i 的值为10, 即返回值为第三次i
C.0123
D.001
答:A
【解析】程序执行过程为:for 循环开始,第一次循环,输出i=l,判断i<4成立,输出i=l,循环结束后i=2; 第二次循环,判断i<4成立,输出i=2, 循环结束后i=3; 第三次循环,判断i<4成立,输出i=3, 循环结束后i=4; 第四次循环,判断i<4不成立,退出循环。程序运行后的输出结果是1123, 故A 项正确。
6. 有以下程序:
程序运行的结果是。
答:D
【解析】外层主循环i 从3减到1执行了3次,嵌套的循环变量j 从1增到2, 每轮执行2次,每次输出i+j的值,即为3+1、3+2、2+1、2+2、1+1、1+2,但注意每次内循环结束要换行。
7. C 语言主要是借助以下( )功能来实现程序模块化的。
A. 定义函数
B. 定义常量和外部变量
C. 三种基本结构语句
D. 丰富的数据类型
答:A
【解析】C 程序的模块化主要通过函数来实现。C 语言允许对函数单独进行编译,从而可以实现模块化。
8. 关于C 语言标识符,以下叙述错误的是( )。
A. 标识符可全部由数字组成
B. 标识符可全部由下划线组成
C. 标识符可全部由小写字母组成
D. 标识符可全部由大写字母组成