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

2017年天津大学教育学院854现代教育技术基础或程序设计语言[专业硕士]之C程序设计考研强化模拟题

  摘要

一、选择题

1. 以下函数按每行8个输出数组中的数据:

下画线处应填入的语句是( )。

A.

B.

C.

D. 【答案】C

【解析】每行输出8个数组数据的实现,即输出8个后就输出一个换行,所以,应该对8取余,当结果为0时输出换行符,即用语句

2. 若有函数声明

A. 函数参数array ,ptr 都是指针变量

B. 函数参数array 不是指针变量,ptr 是指针变量 C. 调用函数时,实参数组的值将一一复制给array 数组 D. 调用函数时,array 是按值传送,ptr 是按地址传送 【答案】A

【解析】数组名为数组的首地址,也是指向数组的指针,所以array 和ptr 都是指针,A 项正确,B 项错误。调用函数时,将实参数组首地址赋给指针array , 而不是传递整个数组元素,C 项错误。调用函数时,ar-ray 与ptr 都是按地址传送的,D 项错误。

3. 以下选项中与语句功能不同的switch 语句是( )。

可表达。

以下叙述正确的是( )。

【答案】B

【解析】在switch 语句的执行过程中,执行完case 后面的语句后,如果遇到break 语句就停止,否则将继续执行下一个case 中的语句,直到遇到break 语句。B 项,当a==1是a=b, 刚好和题干要求相反。

4. 有以下程序

该程序试图通过指针p 为变量n 读入数据并输出,但程序有多处错误,以下语句正确的是( )。

【答案】A

【解析】B 项的正确写法应为

项的正确写法应为

5

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

A.2.0 B.1.7 C.2 D.1

【答案】D

【解析】在类型转换过程中,如果较高类型转换成较低类型,直接忽略多余位数。在程序执,行过程为:调用函数sub (3.8,2.1. , 3.8—2.1=1.7(double 类型)(int )强制转换将1.7转换成int 类型1, 然后返回1并输出,故D 选项正确。

将变量n 的地址赋给指针p ; C

项的正确写法应为

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

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

B. 用户定义的函数中可以有多个return 语句,以便可以调用一次返回多个函数值 C. 用户定义的函数中若没有return 语句,则应当定义函数为void 类型 D. 函数的return 语句中可以没有表达式 【答案】B

【解析】用户定义的函数有两种:①void 函数,可以没有return 语句,如果有return 语句,也不可以返回任何表达式;②指定返回类型函数,至少有一个返回语句。在一个函数内,可以根据需要在多处出现return 语句,但无论有多少个return 语句,return 语句只会被执行一次然后退出函数,并且只能返回一个函数值。

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

A. —个C 程序可以包含多个不同名的函数 B. —个C 程序只能有一个主函数

C.C 程序在书写时,有严格的缩进要求,否则不能编译通过 D.C 程序的主函数必须用main 作为函数名 【答案】C

【解析】一个C 程序有且只有一个主函数main 。一个C 程序可以包含多个不同名字的子函数。C 程序在书写时没有严格的缩进要求。

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

A. 基类型不同的指针可以直接相互赋值 B. 函数可以通过指针形参向所指单元传回数据 C. 字符型指针可以指向一个字符串

D. —般情况下,指针的运用可使程序代码效率更高 【答案】A

【解析】把一个指针变量的值赋给另一个指针变量,但一定要确保这两个指针变量的基类型是相同的。

9. 下面选项中关于“文件指针”概念的叙述正确的是( )。

A. 文件指针就是文件位置指针,表示当前读写数据的位置 B. 文件指针是程序中用FILE 定义的指针变量 C. 文件指针指向文件在计算机中的存储位置

D. 把文件指针传给fscanf 函数,就可以向文本文件中写入任意的字符 【答案】B

【解析】文件指针实际上是指向一个结构体类型的指针,包含有诸如:缓冲区的地址在缓冲