2018年河南科技大学信息工程院878面向对象程序设计[专硕]之C程序设计考研核心题库
● 摘要
一、选择题
1. 有以下程序:
程序的运行结果是( )。
A.
B.
C. D. 【答案】B
【解析】调用函数fun ,
输出的是
即输出即
2. 若各选项中所用变量已正确定义,函数fun 中通过return 语句返回一个函数值,以下选项中错误的程序是( )。
【答案】B
【解析】当在所有函数的外部、被调用之前说明函数时,在对函数进行说明的语句后面所有位置上都可以对该函数进行调用。函数说明也可以放在调用函数内的说明部分,如在main 函数内 部进行声明,则只能在main 函数内部才能识别该函数。B 项错误,main 函数不能识别fun 函数。
3. 有以下程序
程序运行后的输出结果是( )。 A.235 B.0235 C.02356 D.2356 【答案】A
【解析】第一次循环k 为5,
执行为3, 第二次循环k 为3,
执行执行
4.
若有定义
【答案】C
【解析】根据优先级规则,II 两边都是括号,则从左至右执行括号中的表达式,将赋值给a ,即a 为5, 不为0,
则
5. 有以下程序
程序运行后的输出结果是( )。 A.2,3,1 B.2,3,2 C.2,3,3
和输出n 为2, k 的值
输出n 为3, k 的值为2, 第三次循环k 为2,
,输出n 为5, k 的值为1,循环条件不成立,所以输出235。 则执行表达式
后a 、b 、c 的值依次为( )。
的值
右边的括号不需要再执行。
D.2,2,1 【答案】A
【解析】对于表达式“z=x++,y++,++y; ”,赋值运算符的优先级高于逗号运算符的优先级,可改成“(z=x++),(y++),(++y)”。然后从左向右先计算表达式z=x++,因为x++先使用后自増,所以z 的值为1,x 的值为2。再计算逗号表达式第二个表达式y++,此时y 的值为1,y++的值为2。最后计算第三个表达式++y,y 的值为3。
6. 若有函数声明
:以下叙述正确的是( )。
A. 函数参数array ,ptr 都是指针变量
B. 函数参数array 不是指针变量,ptr 是指针变量 C. 调用函数时,实参数组的值将一一复制给array 数组 D. 调用函数时,array 是按值传送,ptr 是按地址传送 【答案】A
【解析】数组名为数组的首地址,也是指向数组的指针,所以array 和ptr 都是指针,A 项正确,B 项错误。调用函数时,将实参数组首地址赋给指针array , 而不是传递整个数组元素,C 项错误。调用函数时,ar-ray 与ptr 都是按地址传送的,D 项错误。
7. 以下程序段中的变量已定义为int 类型,则
程序段的输出结果是( )。 A.6 B.4 C.5 D.7
【答案】D
【解析】整型常量有3种表示方法,分别是十进制数表示法、八进制数表示法和十六进制数表示法,八进制整常量以0作为前缀。自増和自减运算符的两种用法:前置运算,运算符放在变量之前,规则是先使变量的值增(或减)1,然后以变化后表达式的值参与其他运算;后置运算,运算符放在变量之后,规则是变量先参与其他运算,然后再使变量的值增(或减)1。x=010=8,y=10,++x先自加后取值,输出9,y--先取值输出10,再自减y=9,故D 选项正确。
8. 有以下程序:
相关内容
相关标签