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

2017年江西财经大学软件与通信工程学院830C语言程序设计(教技)考研冲刺密押题

  摘要

一、选择题

1. 以下叙述中错误的是( )。

A. 用户定义的函数中可以没有return 语句

B. 用户定义的函数中可以有多个return 语句,以便可以调用一次返回多个函数值

C. 用户定义的函数中若没有return 语句,则应当定义函数为void 类型

D. 函数的return 语句中可以没有表达式

【答案】B

【解析】定义函数有两种,一种是void 函数,可以没有return 语句,若有,则不能有任何表达式。另一种 是指定返回类型,则必须有一个return 语句。在一个函数内,可以根据需要在多处出现return 语句。但无论函数 体内有多少个return 语句,return 语句只返回一个函数值。

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

A. 函数的返回值不能是结构体指针类型

B. 函数的返回值不能是结构体类型

C. 在调用函数时,可以将结构体变量作为实参传给函数

D. 结构体数组不能作为参数传给函数

【答案】C

【解析】C 项正确,结构体变量作为实参时,是传值形式调用;AB 两项错误,函数的返回值可以是结构体变量和结构体指针变量;D 项错误,向函数传递结构体数组名时,传递的是实参结构体数组的首地址,是传引用形式调用。

3. 以下函数findmax 拟实现在数组中查找最大值并作为函数值返回,但程序中有错导致不能实现预定功能。

造成错误的原因是( )。

A. 定义语句

B. 赋值语句

C. 语句

D. 赋值语句

【答案】D

【解析】本题中for 循环中首先将MIN 值赋值给max , 然后用

将MIN 值与

值进行比较,所以无论

先执 的值是什么,都不会影响if 的判断语句,始终执行。所以函数返回的是数组中最后一个元素的值。本题的错误在于

4. 以下程序:

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

A.0

B.-12

C.-20

D.10

【答案】C

5. 有以下程序:

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

中max 未赋初值 中,不应给max 赋MIN 值 中判断条件设置错误 放错了位置 与max 的值比较。每次都是的位置,for 循环之前应解析】将函数的宏替换 代入程序中即可

A.12

B.4

C.1

D.0

【答案】B 【解析】

6 设有如下定义.

【答案】A

【解析】可用以下3种形式来引用结构体变量中的成员,其中结构体变量名也可以是已定义的结构体数组的数组元素:①结构体变量名. 成员名;②指针变量名->成员名;③(*指针变量名). 成员名。题目中a 为数组名是地址常量,不是指针变量,A 项引用错误。a[0]为变量名,B 项引用正确。p 为指针,且正确的指向结构体变量,C 项引用正确。D 项符合第三种引用方式,引用正确。

7. 有以下程序:

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

A.ABCDEF

B.AbCdEf

C.aBcDeF

D.abcdef

【答案】B

【解析】本题中,当i 为偶数时,即0、2、4, 执行会依次输出ACE ; 当i 为奇数时,即1、3、5,执行putchar (i+b)会依次输出bdf ,所以最终输出AbCdEf 。

8. 有如下定义:

以下语句错误的是( )。

先输出i ,由于i=4, 不满足条件,直接输出换行符。

则以下错误引用结构体成员n 的是( )。