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

2018年江西师范大学软件院868C语言程序设计[专硕]之C程序设计考研强化五套模拟题

  摘要

一、选择题

1. 有以下程序

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

A.-1

B.0

C.1

D.7

【答案】A

【解析】当a 为0时,a-表达式为0, 条件为假,循环结束,执行判断条件后a 为-1。

2. 设有定义:

紧接着的赋值语句正确的是( )。 A. B. C. D.

【答案】A

【解析】指针赋值的正确写法:表示p 指向x 的存储单元;表示p 是空指针。

3. 若变量己正确定义并赋值,则错误的赋值语句是( )。

A.a=a+l;

B.a=sizeof(double );

C.a=dllc;

D.a+l=a;

【答案】D

【解析】赋值号的左边必须是一个代表某个存储单元的变量名,赋值号的右边必须是C 语言

中合法的表达式。赋值运算的功能是先求出右边表达式的值,然后把此值赋给赋值号左边的变量。

4. 有以下程序:

若文本文件filea.txt 中原有内容为:hello ,贝U 运行以上程序后,文件

( )。

A.Helloabc

B.abclo

C.abc

D.abchello

【答案】C 【解析】为写而打开文本文件。这时,如果指定的文件不存在,系统将用在fopen 调用

文件以写的形式打开再利用fprintf 函中指定的文件名建立一个新文件; 如果指定的文件已存在,则将从文件的起始位置开始写,文件中

原有的内容将全部消失数对文件进行操作,而

故中的内容是abc 。 是先将文件清空,再写入,所以本题是将abc 写入

中的内容为

5. 若变量x 、y 已正确定义并赋值,以下符合C 语言语法的表达式是( )。

A.x+l=y

B.++x, y=x--

C.x=x+10=x+y

D.double (x )/10

【答案】B

【解析】B 项正确,++x是前缀表达式,y=x--是复合语句,先进行x--, 然后把自减后的值赋给y 。A 项错误,x+1是右值,不能被赋值;C 项错误,x+10是右值,不能被赋值;D 项错误,应改成(double )x/10, double (x )/10是表示声明了一个double 变量,它名字是(x )A0,显然不符合C 语言语法。

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

A.C 程序在运行过程中所有的计算都以二进制方式进行

B.C 程序在运行过程中所有的计算都以十进制方式进行

C. 所有的C 程序都需要在连接无误后才能运行

D.C 程序中整型变量只能存放整数,实型变量只能存放浮点数

【答案】B

【解析】在C 程序运行过程中,编译器的作用是将程序转换为目标代码,目标代码都是二进制的。

7 若有定义语句:.

误的是( )。

【答案】C

【解析】:数组的下标从零开始,数组m 中有5个元素,所以数组m 即

C 项,但是数组下标范围是所以溢出引用错误。

8. C 语言主要是借助以下( )功能来实现程序模块化的。

A. 定义函数

B. 定义常量和外部变量

C. 三种基本结构语句

D. 丰富的数据类型

【答案】A

【解析】C 程序的模块化主要通过函数来实现。C 语言允许对函数单独进行编译,从而可以实现模块化。

9. 当变量c 的值不为2、4、6时,值也为“真”的表达式是( )。 A. B. C. D.

【答案】B

【解析】A 项,当变量c 的值为2、4、6中任意一个时为真,不为2、4、6则为假;B 项

表示c 大于等于2小于等于6是为真,

c 不等于5为真,表示c 不等于3为真,(c!=5)表示表示运算为有一项为真即为真,因此所有的整数都满足;C 项,引用数组元素为则下面对m 数组元素的引用中错

必须为偶数数,并且所以只有c 为2、4、6时为真;D 项,表达式与C 项中表达式等价。

10.以下选项中能表示合法常量的是( )。