2017年河南科技大学信息工程学院878面向对象程序设计[专业硕士]考研题库
● 摘要
一、选择题
1. 若各选项中所用变量已正确定义,函数fun 中通过return 语句返回一个函数值,以下选项中错误的程序是( )。
【答案】B
【解析】当在所有函数的外部、被调用之前说明函数时,在对函数进行说明的语句后面所有位置上都可以对该函数进行调用。函数说明也可以放在调用函数内的说明部分,如在main 函数内 部进行声明,则只能在main 函数内部才能识别该函数。B 项错误,main 函数不能识别fun 函数。
2. 以下叙述中正确的是( )。
A.
语句B.
语句C.
语句D. 语句符
【答案】A
【解析】A 项正确,表示定义了长度为8的int 型数组,它里面的每个元素都是0。当所赋初值少于所定义数组的元素个数时,将自动给后面的元素补以初值0。B 项错误,C 语言规定可以通过赋初值来定义数组的大小,这时数组说明符的一对方括号中可以不指定数组的大小;C 项错误,a 是char 类型的数组,里面的元素应该是字符而非字符串,应该用单引号括起来;D 项错误,数组变量一旦定义,其地址值不可改变,不能给数组名重新赋值。
3. 有如下程序:
第 2 页,共 35 页
是合法的
是不合法的,遗漏了数组的大小
是合法的,定义了一个包含两个字符的数组
是合法的,因为数组有三个字符空间的容量,可以保存两个字
程序运行后的输出结果是( )。
【答案】A
【解析】可用以下3种形式来引用结构体变量中的成员:①结构体变量名. 成员名;②指针变量名>成员名;③(*指针变量名). 成员名。数组名是指向数组首地址,也可以当做指向数组的指
针来使用。
元素
4. 若有定义语句
A.-20 B.-10 C.0 D.10
【答案】B 结果为
-10, 赋值给X 。
5. 设有如下函数定义:
若执行调用语句:A.2 B.3 C.4 D.5
【答案】B 会返
回
第 3 页,共 35 页
指向数组第三个元素
运行后的输出结果是
则表达式
为字符串
A 项正确。
的值为( )。
指向数组第一个
【解析】赋值表达式,首先计算右边表达式,然后在进行赋值。先做结果为20, 再做
则函数fun ( )总共被调用的次数是( )。
【解析】函数fun 为递归函数,递归结束条件是k 为小于等于1的数。执行fun (3)语句时
即
执
行
时会返
回
即
执
行
时会返回1,所以函数fun 总共被调用3次。
6. 以下函数的功能是:通过键盘输入数据,为数组中的所有元素赋值( )。
在程序中下画线处应填入的是( )。
A.
B.
C.
D. 【答案】C
A 项错误,【解析】划线处需要完成两个功能:①给x[i]元素赋值;②i 变量加一。仅能对x[0],赋值,且会是程序陷入死循环;B 项错误, ,仅能对x[l]赋值,也会是程序陷入死循环;D 项错误,不能实现为x[0]赋值,而且还会导致出界。
7. 以下关于宏的叙述中正确的是( )。
A. 宏名必须用大写字母表示
B. 宏定义必须位于源程序中所有语句之间 C. 宏替换没有数据类型限制 D. 宏调用比函数调用耗费时间 【答案】C
【解析】A 项错误,用作宏名的标识符通常习惯用大写字母表示,宏名可以是任何合法的C 语言标识符;B 项错误,在语言中,宏定义可以根据需要写在任何位置:D 项错误,宏调用是在编译前由编译预处理程序完成的,不占运行的时间。
8. 有如下程序:
程序运行时,输入A.1234 B.4321
则输出结果是( )。
第 4 页,共 35 页