当前位置:问答库>考研试题

2017年北京交通大学02205面向对象程序设计复试实战预测五套卷

  摘要

一、选择题

1. 以下能正确表述算式

【答案】A

【解析】A 项正确。sin 是库函数,其参数中的角度要求用弧度制表示。C 语言中义的常量,需要用户自定义或者直接使用是

代替

B 项未替换

误。C 项没有将30度换算成弧度,错误。D 项弧度换算错误,对应于

2. 以下叙述中正确的是( )。

A. 语句B. 语句C. 语句D. 语句符

【答案】A

【解析】A 项正确,表示定义了长度为8的int 型数组,它里面的每个元素都是0。当所赋初值少于所定义数组的元素个数时,将自动给后面的元素补以初值0。B 项错误,C 语言规定可以通过赋初值来定义数组的大小,这时数组说明符的一对方括号中可以不指定数组的大小;C 项错误,a 是char 类型的数组,里面的元素应该是字符而非字符串,应该用单引号括起来;D 项错误,数组变量一旦定义,其地址值不可改变,不能给数组名重新赋值。

3. 若有定义语句:则表达式的值为( )。

【答案】B

【解析】因为+的运算优先级高于赋值运算符,所以先做

结果为20, 再做

结果为

值给X 。

4. 有以下程序(strcpy 为字符串复制函数,strcat 为字符串连接函数):

第 2 页,共 24 页

的C 语言表达式是( )。

不是已定

而不

也没有将30度换算成弧度,错

应该除以

是合法的

是不合法的,遗漏了数组的大小

是合法的,定义了一个包含两个字符的数组

是合法的,因为数组有三个字符空间的容量,可以保存两个字

程序运行后的输出结果是( )。 A.al2xyz B.12yz C.a2yz D.bc2yz 【答案】C

【解析】先执行strepy ,将

中的2复制到a[l]中的b 及之后的存储空间中,即此时数组a

所指的y 及之后的z 与a 中的连接,即为

再执行strcat 连接函数,将中值为

5. 有以下程序

程序运行后的输出结果是( )。 A.24 B.44 C.22 D.46

【答案】B

【解析】p 是int 类型的指针,指向数组a 的首元素;k 的int*类型的指针,指向int*

变量

先执行p++,p 指向a 中第二个元素,然后取值,输出

6 若有定义语句:.

误的是( )。

【答案】C

【解析】:数组的下标从零开始,数组m 中有5个元素,所以数组m 即

C 项,

第 3 页,共 24 页

则下面对m 数组元素的引用中错

引用数组元素为

但是数组下标范围是所以溢出引用错误。

7. 以下选项中,当x 为大于1的奇数时,值为0的表达式是( )。

【答案】D ^为假。 【解析】x 为大于1的奇数,的值为1,

8. C 语言程序中,运算对象必须是整型数的运算符是( )。

A.&& B./ C.% D.*

【答案】C

【解析】模运算中不能出现浮点数,运算对象只能是整数。

二、设计题

9. 程序定义了

的二维数组,并在主函数中自动赋值。请编写函数

函数的功能是:使数组左下半三角元素中的值乘以n 。例如,若n 的值为3, a数组中的值为:

则返回主程序后a 数组中的值应为:

注意:部分源程序给出如下。 句。试题程序:

第 4 页,共 24 页

请勿改动函数main 和其他函数中的任何内容,仅在函数fun 的花括号中填入你编写的若干语