2016年青岛大学信息工程学院C语言程序设计(同等学力加试)考研复试题库
● 摘要
一、选择题
1. 若有以下程序
则程序的输出结果是( )。 1, 2, 3, 4,13,14,15,16, 4, 8, 12, 16, 1, 5, 9, 13,
1,5, 9, 13,4, 8,12,16, 13, 14, 15, 16, 1, 2, 3, 4, 答:C
【解析】fun 函数中使用三目运算符,flag 为1时,b[i]取值时,
取值
和
中较大者。所以,
的作用是,
的作用是,
2. 有以下程序:
第 2 页,共 36 页
和中较小者;flag 为0
存储a 中第i 行的最小元素
;
存储a 中第i 行的最大元素。
程序运行以后的输出结果是( )。 A.7 B.8 C.9 D.10 答:C
【解析】在函数f 中,整型变量a 为静态变量,所以每次调用函数f 时不再为a 重新赋值,而且a 的值只有在程序结束时才被释放。第一次调用f
后 所以结果为
3. 以下叙述中正确的是( )。
A. 只要是用户定义的标识符,都有一个有效的作用域
B. 只有全局变量才有自己的作用域,函数中的局部变量没有作用域 C. 只有在函数内部定义的变量才是局部变量 D. 局部变量不能被说明为static 答:A
【解析】A 项正确,标识符的“作用域”是指程序中的某一部分中,标识符是有定义的,可以被C 编译和 连接程序所识别。在C 语言中,由用户命名的标识符都有一个有效的作用域。B 项;C 项错误,在函数内部或复合语句内错误,局部变量的作用域是所 在的函数体(或复合语句)
部定义的变量,称为局部变量;D 项错误,在 函数体(或复合语句)内部用static 来说明一个变量时,变量为静态局部变量。
4. 有以下程序
:
a 已经变成2了,第二次调用时,
程序的运行结果是( )。
A.6 B.5 C.4 D.3 答:B
【解析】条件运算符
语法形式为:
执行规则为:计算表达式expl 的
值,测试其是否为0; 如果expl 的值非0, 则对exp2求值,并把这个值作为条件表达式的
结果输出,不计算exp3; 如果expl 的值为0,则对exp3求值,并把这个值作为条件表达式的结果输出,不计算exP2。函数ml 实现返回传入两个参数中的最小值。函数m2实现返回传入两个参数中的最大值。函数fun 实现返回传入两个参数之和。程序执行过程为:调用ml (2, 3)返回2, 调用m2(3, 1)返回3, 调用fun (2,3)返回5,输出结果5,故B 项正确。
第 3 页,共 36 页
5. 有以下程序:
执行时如输入为:A.abcdefg
B.
c. D.bcdefgh 答:D
则输出结果是( )。
【解析】题目中for 语句含义是,每次将函数getchar ( )的输入值赋给变量c ,如果不等于‘#’,则执行putcbar (++c), 即将当前变量c 值的ASCII 码+1后,再输出改变后的变量c 的值。当变量c 的值等于‘#’,则终止循环,所以输出应该是bcdefgh ,答案为D 选项。
6. C 语言中,最基本的数据类型包括( )。‘
A. 整型、实型、逻辑型 B. 整型、字符型、数组 C. 整型、实型、字符型 D. 整型、实型、结构体 答:C
【解析】C 语言中,最基本的数据类型包括整型、实型、字符型,答案为C 选项。
7. 有以下程序段:
当执行上述程序段,并从键盘输入:name=Lilinum=1001<回车>后,name 的值为( )。 A.Lili
B.name=Lili C.Lilinum=
D.name=Lilinum=1001 答:A
【解析】在C 语言中输入多个字符串时,系统会把空格字符作为输入的字符串之间的分隔符。本题中,由于输入两个变量,所以中间应该以回车键为间隔,当从键盘输入name=Lilinum=1001只是输入第一个变量,并且只将Lili 赋值给了name 。
8. 有以下程序:
第 4 页,共 36 页