一、选择题
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.flqv
B.agmrw
C.ekpuy
D.flqvz
【答案】A
【解析】puts ( )函数将数组中存放的字符串输出到输出设备中,用
结束符取代字符串strlen ( )函数是求字符串的实际长度(不包含结束标志),并且作为函数值
输出字符串W 为flqv , 故A 选项正确。
第 2 页,共 42 页 返回。程序中for 循环实现,将第i 个字符 串最后一个字符放入w 数组下标值为i 的位置,即最后将数组最后一个字符赋值为
3. 在C 语言中,以下选项中不能正确表示10X1000之值的是( )。
A.1.0E4.0
B.1.E4
C.10E3
D.1.0e4
【答案】A
【解析】实型常量用带小数点的数字表示,其值有两种表达形式,分别为十进制小数形式和指数形式。指数形式由十进制数加阶码标志“e ”或“E ”以及阶码(只能为整数,可以带符号)组成,而A 项中阶码4.0是浮点数,所以A 项不能正确表示10X1000之值,B 、C 、D 项都表示正确并且值为10000,故选择A 项。
4. 有以下程序:
程序运行后的输出结果是( )。
A.0
B.2
C.3
D.5
【答案】B
【解析】本题main 函数的作用就是判断字符串s 中小写字母的个数,显然结果为2。
5. 以下程序的主函数中调用了在其前面定义的函数fun :
则以下选项中错误的fun 函数首部是( )。
A. B. C. D.
【答案】D
【解析】由题目可知,fun 函数中定义的应该是一个double 型的指针变量。
第 3 页,共 42 页
6. 若有以下程序:
以下叙述中正确的是( )。
A. 可用S 定义结构体变量
B. 可用T 定义结构体变量
C.S 是struct 类型的变量
D.T 是structS 类型的变量
【答案】B
【解析】S 为结构体类型名,而T 为结构体变量名表。
7. 有以下程序:
程序运行后的输出结果是( )。
A.ABCDEFGHIJKLMNOP
B.ABCDEFGHHKL
C.ABCD
D.AEIM
【答案】D
【解析】auto 变量又称为自动变量,函数定义变量时,如果没有指定存储类别,系统就认为所定义的变量具 有自动类别,D 选项正确。static 变量又称为静态变量,编译时为其分配的内存在静态存储区中。register 变量又称为寄存器变量,变量的值保留在CPU 的寄存器中,而不是像一般变量那样占内存单元。当定义一个函数时, 若在函数返回值的类型前加上说明符extern 时,称此函数为外部函数,外部函数在整个源程序中都有效。
8. 设a , b,c 是整型变量且均已赋值,则以下选项中错误的赋值语句是( )。
【答案】A
【解析】赋值运算结合性为由右向左结合,赋值运算符左值为变量,右值为变量或常量,且左右两边数据类 型相同才能实现赋值。A 项中,赋值运算
第 4 页,共 42 页 左值为表达式,不是变量不