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

2017年北京市培养单位材料科学与光电技术学院864程序设计考研题库

  摘要

一、选择题

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

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

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

2. fun 函数的功能是:通过键盘输入给x 所指的整型数组所有元素赋值。在下画线处应该填写的是( )。

A.

B.

C.

D. 【答案】D

【解析】数组名本身就是地址,所以不需要用符号。C 选项不能对所有元素赋值而是反复给一个数值赋值且是死循环。

3. 有以下程序

第 2 页,共 43 页

程序运行后的输出结果是( )。 A.36 B.28 C.32 D.24

【答案】D

【解析】函数f 可以重写为: 1 2 3 45678 9101112131415 16

,进入第8行的else 语句;第10行,t=7; 第13行,调用f (0)

f (0)的返回值相同,返 回12。

4. 有以下程序

程序的运行结果是( )。 A.a=2.b=l B.a_2,b-2 C.a=l, b=l D.a=l, b=0

第 3 页,共 43 页

返回12。

,因为a 都是函数f 中的局部变量,在f (0)结束时都己经被销毁,所以f (l )和调用f (l )

结果输出24。

【答案】A

【解析】当执行swicth 语句时,首先计算紧跟其后一对括号中的表达式的值,然后在switch 语句体内寻找与该值吻合的case 标号。如果有与该值相等的标号,则执行该标号后开始的各语句,包括在其后的所有case 和default 中的语句,直到switch 语句体结束;每当执行到break 语句时,立即跳出switch 语句体。switch 语句通常总是和break 语句联合使用,使得switch 语句真正起到分支的作用。x=l,首先进入外层分支1,接下来y=0,再进入内层分支0,执行a++,此时a=l,接下来遇到break ,跳出内层switch ; 由于外层分支中没有break 语句,会继续执行外层分支2,执行a++, b++,此时a=2, b=l; 然后遇到break 语句,跳出外层switch 。

5. 有以下程序段:

当执行上述程序段,并从键盘输入:name=Lilinum=1001<回车>后,name 的值为( )。 A.Lili

B.name=Lili C.Lilinum=

D.name=Lilinum=1001 【答案】A

【解析】在C 语言中输入多个字符串时,系统会把空格字符作为输入的字符串之间的分隔符。本题中,由于输入两个变量,所以中间应该以回车键为间隔,当从键盘输入name=Lilinum=1001只是输入第一个变量,并且只将Lili 赋值给了name 。

6. 有以下程序:

程序的运行结果是( )。 A.21

第 4 页,共 43 页