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

2017年杭州师范大学杭州国际服务工程学院826计算机基础之C程序设计考研仿真模拟题

  摘要

一、选择题

1. 有以下程序:

程序运行的结果是( )。

【答案】D

【解析】外层主循环从3减到1执行了 3次,嵌套的循环j 从1增到2, 每轮执行2次。每次输出

的值,就可以得到

每次换行发生在外循环完成一次循环之

后。

2. 有以下程序:

程序运行后的输出结果是( )。 A.1, 2 B.4, 1 C.3, 4 D.2, 3 【答案】D

【解析】题目中定义了一个包含两个整型元素的结构体数组,其

指针p 指向结构体数组的第1个元素,那么

的值为2, 所以输出的结果为2, 3。

3. 有以下程序:

程序运行的结果是( )。 A.1, 2, 3, 4 B.1, 0, 7, 0 C.1, 4, 5, 9 D.3, 4, 8, 0 【答案】B

【解析】由二维数组x 的定义知,数组x 为4行4列。fun 函数中for 循环的作用是将二维数组前4行的对角线元素赋

在主函数中定义二维数组

所以可以看出对角线元素为1、0、7、0。

4. 表达式:(int )((double )9/2)—9%2的值是( )。

A.4 B.0 C.3 D.5

【答案】C 【解析】(int )((double )9/2)值为4,9%2值为1,相减值为3。

5. 设有定义:

的值为

若变量均已正确赋初值,则以下语句中错误的是( )。

【答案】A

【解析】A 项错误,struct 中的mark 成员是数组,数组一旦定义,不能直接赋值。B 项正确,numl 是int 变量,可以直接赋值。C 项正确,C 语言中struct 变量可以直接赋值,实际操作是内存拷贝;D 项正确,num2是int 变量,可以直接赋值;C 语言中,数组不能直接赋值,但是把数组包装在struct 中,就可以实现直接赋值。

6. 有以下程序:

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

B. 变量无定义,输出不确定 C.-1 D.1

【答案】A

【解析】NULL 是包含在头文件stdiah 中的宏定义,其数值由编译器确定,一般情况下是0。

7. 有以下程序:

程序的运行结果是( )。 A.4 B.5 C.6 D.7

【答案】C

【解析】fun 函数是递归函数,用来计算从0到n 的整数和。调用fun 函数,n=3,

返回

【程序有错,

应为】