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

2018年北京市培养单位空间应用工程与技术中心864程序设计之C程序设计考研核心题库

  摘要

一、选择题

1. 有以下程序:

程序运行的结果是。

【答案】D

【解析】外层主循环i 从3减到1执行了3次,嵌套的循环变量j 从1增到2, 每轮执行2次,每次输出i+j的值,即为3+1、3+2、2+1、2+2、1+1、1+2,但注意每次内循环结束要换行。

2. 若有以下程序

则程序的输出结果是( )。 A.H9

B. 表达式不合法输出无定值

C.

D. 【答案】A

【解析】当字符参与数学运算时,替换成其在ACSII 码表中对应的数值,

在printf 函数中,cl 以字符的形式输出,得到结

果H ,c2以整数的形式输出,得到ASCII 码值9。

3.

若有定义语句

A.char B.int C.double D.float 【答案】c

则表达式值的类型是( )。

【解析】在多目运算符相关联的运算数中,如果类型不一致,系统将自动进行类型转换,使两边的类型达到一直后,再进行运算,转换的规则是由“低到高”。double 型,即选择答案C 。

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

A.a=a+l;

B.a=sizeof(double ); C.a=dllc; D.a+l=a; 【答案】D

【解析】赋值号的左边必须是一个代表某个存储单元的变量名,赋值号的右边必须是C 语言 中合法的表达式。赋值运算的功能是先求出右边表达式的值,然后把此值赋给赋值号左边的变量。

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

A.break 语句不能用于提前结束for 语句的本层循环 B. 使用break 语句可以使流程跳出switch 语句体 C.continue 语句使得整个循环终止

D. 在for 语句中,continue 与break 的效果是一样的,可以互换 【答案】B

【解析】B 项正确,break 语句可以跳出switch 语句和循环。A 项错误,break 语句在for 循环C 项错误,continue 语句的作用是跳过本次循环体中余下尚未执行的语句,内部的作用是跳出循环;

立刻进行下一次的循环条件判定,可以理解为仅结束本次循环,并没有使整个循环终止;D 项错误,continue 和break 的效果完全不同。

6. 有以下程序:

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

是字符型,a 是整型,b

是double 型。字符型数据占1个字节,整型占2个字节,double 型占8个字节,故三者相加后为

B.4, 10 C.8, 8 D.10, 10 【答案】B

【解析】在C 语言中,strlen ( )用来统计字符串中字符的个数,sizeof ( )是求分配给数组的存储空间大小。题目中字符串a 中字符个数为4, 但由于数组a 定义含有10个字符,所以所占空间大小为10。

7. 有以下程序:

执行时如输入为

:A.abcdefg

B.

c. D.bcdefgh 【答案】D

则输出结果是( )。

【解析】题目中for 语句含义是,每次将函数getchar ( )的输入值赋给变量c ,如果不等于‘#’,则执行putcbar (++c), 即将当前变量c 值的ASCII 码+1后,再输出改变后的变量c 的值。当变量c 的值等于‘#’,则终止循环,所以输出应该是bcdefgh ,答案为D 选项。

8. 有以下程序:

以上程序执行后A.China B.Chinang C.ChinaBeijing D.BeijingChina 【答案】B

【解析】

文件的内容是( )。

首先建立一个新文件,进行写操作,随后可以从头开始读。如果指定的文件

已存在,则原有的内容将全部消失。首先定义了一个文件指针pf , 然后执行