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

2017年上海海洋大学信息学院919计算机基础综合之C程序设计考研仿真模拟题

  摘要

一、选择题

1. 若有说明

A. 编译后系统为W 分配5个字节

B. 编译后系统为W 分配6个字节

C. 编译后系统为W 分配58个字节

D. 编译后系统不为W 分配存储空间

【答案】D

【解析】结构体类型的说明只是列出了该结构的组成情况,标志着这种类型的结构“模式”已存在,编译程序并没有因此而分配任何存储空间。真正占有存储空间的仍应是具有相应结构体类型的变量、数组以及动态开辟的存储单元。

2. 下列关系表达式中,结果为“假”的是( )。

A. (3+4)>6 B. C. D.

【答案】B

【解析】A 项,先执行:

为假;C 项,先执行

即为1,再执行1==1,结果为真。

3. 有以下程序:

程序的运行结果是( )。

A.0

B.9

第 2 页,共 33 页 则以下叙述中正确的是( )。 结果为真;B 项,先执行为真,即为1,1>2结果结果为真,即1,再逻辑或3, 结果为真;D 项,先执行3<4结果为真,

C.6

D.8

【答案】C

【解析】函数f 是递归函数,递归的终止条件是X 为1或2。返回值为3,即

4. 有如下定义:

若文件已正确打开,且数组x 的10个元素均已赋值,以下将数组元素写到文件中的语句错误的是( )。

【答案】A

【解析】A 项中,因为n=l, 即每次写入1个结构体数据,x 是数组的首地址,因此,每次写入的数据都是数组的首个结构体元素,没有将整个数组写入文件中去。

5. 若变量已正确定义为int 型,要通过语句

□代表一个空格符)给a 赋值1、给b 赋值2、给c 赋值3, 以下输入形式中错误的是(注:( )。

A. B. C. D.

【答案】D

【解析】在输入整数或实数这类数值型数据时,输入的数据之间必须用空格、回车符、制表符(Tab 键)等间隔符隔开,间隔符个数不限。在题目中,scanf 函数使用通配符逗号,则在输入数据时也要使用通配符逗号,且逗号要紧跟着数据后面。

6. 有以下程序:

第 3 页,共 33 页 当时所以

则以下叙述正确的是( )。

A. 在main 函数中声明了 findmax 函数

B. 在main 函数中定义了 findmax 函数

C. 在main 函数中两次调用了 findmax 函数

D. 在main 函数内、外重复定义了 findmax 函数

【答案】A

【解析】程序编译是从上到下进行的,所以如果函数定义放在主函数之后,那么在函数调用时必须提前声明函数,可以在主函数之前声明函数,也可以在主函数中函数调用之前声明函数。题目中函数findmax 定义放在了函数之后,所以主函数中声明了 findma 函数

为函数声明

,为函数调用

为函数定义。A 选项正确。B 选项是在main 函数外定义的findmax

函数,错误。在main 函数中,出现了一次findmax 函数的声明和一次findmax 函数的调用,不是两次调用,C 选项错误。D 选项在main 函数内不是定义findmax 函数而是声明findmax 函数。

7. 设有函数定义:则以下对函数sub 的调用语句中,正确的是( )。

A.

B.

C.

D.

【答案】A

【解析】函数的参数有两个,第一个是整型,第二个是字符类型,在调用函数时,实参必须一个是整型,一个是字符型相容的类型(整型)。A 项中97为字符传入函数,A 项正确。B 项

C 项错误。D 项

8. 有如下程序:

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

A.54321

B.98765 C. D.

【答案】B

第 4 页,共 33 页 的码,可以作为字符不是合法字符,字符单引号里面只能有一个字符,B 项错误。函数sub 返回类型为空,即不返回任何值,故C 项中将函数返回值赋给n 是不正确的调用方法,为字符串,也不是合法的字符,D 项错误。