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

2016年上海理工大学光电信息与计算机工程学院C程序设计及操作系统原理之C程序设计复试笔试仿真模拟题

  摘要

一、选择题

1. 有以下程序

程序的输出结果是( )。

A.7 1

B.4 3

C.3 4

D.0 0

答:A

【解析】main 函数中变量c 和d 以传地址的方式传递参数,形参的改变会导致实参的改变。

2. 有以下程序:

»

程序运行后的输出结果是。

A.9, 18

B.8, 11

C.7, 11

D.10, 14

答:D

【解析】for 循环语句中令变量a 自増1, 而在循环语句中又令a 自增了2, 所以可看作每次循环a 自增3。第一次循环,a=l,b=b+a=3, a=a+2=3; 第二次循环,a=4,b=b+a=7a=a+2=6; 第二次循环,a=7,b=b+a=14, a=a+2=9; 所以最后退出循环体时a=10,b=14。

3. 有如下程序:

程序运行后的输出结果是( )。

A.124,124,

B.123,124,

C.124,123,

D.123,123

答:A

【解析】本题程序执行过程为:调用change 函数,将变量data 地址传入函数,返回当前指针指向的变量值123,之后此变量加一,data=124。输出data=124。再次调用函数,返回当前指针指向的变量值124,然后此地址内存中变量加一,data=125,然后将返回值124赋给变量data=124,最后输出data=124。A 项正确。

4. 有如下程序:

程序运行后的输出结果是( )。

答:C

【解析】程序执行过程为:判断

先取值,

是否成立,前置运算先加1,则后置运算

则也即是判断

5. 有如下程序:

成立,输出T , 之后输出故C 选项正确。

程序运行后的输出结果是( )。

A.min=l, max=9

B.min=0, max=9

C.min=l, max=4

D.min=0, max=4

答:B

【解析】在对数组进行初始化时,如果在说明数组时给出了长度,但没有给所有的元素赋予初始值,而只依次给前面的几个数组元素赋予初值,那么c 语言将自动对余下的元素赋初值0,

程序的执行过程为:调用函数将数组array 首地

址传人函数,定义结构体变量res ,并为其成员赋值。for 循环查找数组array 数组的最小值0,将其赋值给res 的成员first , 查找数组最大值9, 赋值给res 的成员second 。最后返回结构体变量res ,

则输出

B 选项正确。