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

2017年北京市培养单位生命科学学院864程序设计考研仿真模拟题

  摘要

一、选择题

1. 有以下程序:

程序的运行结果是( )。 A.D B.C C.B D.A

【答案】A

【解析】A 项正确,main ( )函数中,首先判断条件x>l,因为x=l不大于1,不满足条件,程序跳入else 语句判定z

2. 设有以下程序段:inty :

y=rand( )%30+1; 则变量y 的取值范围是( )。 A.0≤y ≤30 B.0

【解析】本题考点为“%”求余符号。rand ( )产生随机整数,任何整数对30求余得到的整数范围为0〜29,则y 的取值范围为或者说故B 选项正确。

3. 下面是有关C 语言字符数组的描述,其中错误的是( )。

A. 不可以用赋值语句给字符数组名赋字符串 B. 可以用输入语句把字符串整体输入给字符数组 C. 字符数组中的内容不一定是字符串 D. 字符数组只能存放字符串

【答案】D

【解析】字符数组可以用来存放单个的字符或者字符串。

4. 有以下程序

程序的运行情况是( )。 A. 形成无限循环 B. 输出6 C. 输出5 D. 输出4 【答案】A

【解析】本题执行过程为:i=l,k=0, i<6成立,执行for 循环:退出switch ,

成立,执行for 循环:

,匹配easel ,k=l, break

匹配case2,k=2,执行continue ,由于其只用于

循环结构,退出switch , 且不执行此次for 循环以后的语句,i=2不变,i<6成立,执行下一次for 循环,以后的循环情况完全一致,i=2不会改变,形成无限循环。故A 项正确。

5. 计算机高级语言程序的运行方法有编译执行和解释执行两种,以下叙述中正确的是 ( )。

A.C 语言程序仅可以编译执行 B.C 语言程序仅可以解释执行

C.C 语言程序既可以编译执行,又可以解释执行 D. 以上说法都不对 【答案】A

【解析】编译型语言编写的程序在执行之前,需要一个专门的编译过程把程序编译成机器语言的文件,比 如.exe 文件,再次运行时便不需要重新翻译,直接使用编译的结果便可以了,因为翻译只做了一次,运行时不需 要翻译,所以编译型语言的程序执行效率高。解释则不同,解释型语言的程序不需要编译,在运行程序的时候才 翻译,解释型语言每执行一次便需要翻译一次,效率低。C 语言程序属于编译执行类型。

6. 若有定义语句intx=12,y=8,z ;,其后执行语句

A.1.9 B.1 C.2 D.2.4

【答案】B 由于z 定义为整型,故最终结果为1。

则z 的值为。

【解析】根据优先级先计算x/y, 即12/8,由于是整型,故x/y的值为1,接着计算0.9+1=1.9,

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

A.C 程序总是以main ( )作为程序执行的起始行 B.main ( )函数若不带参数,其后面的一对圆括号可省略 C. 函数体内的定义语句和可执行语句允许任意穿插出现 D.C 语言中的语句之间必须用分号作为分隔符 【答案】A

【解析】main ( )函数后面的括号告诉编译器这是一个函数,不可以省略,排除B 选项;在复合语句中,不仅可以有执行语句,还可以有定义语句,定义语句应该出现在执行语句的前面,故排除C 选项;C 语言中的某些语句可以不用分号,例如if 语句,宏定义,故D 选项错误;答案为A 选项。

8. 有以下程序:

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

【答案】D

【解析】main 函数首先将数组a 中的元素值写入文件,再将文件中的元素倒序存放在数组a 中,最后答应数组a 的值,最终输出为6, 5, 4,3, 2,1。

9. 有以下程序

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