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

2018年山东理工大学商院941系统工程之C程序设计考研核心题库

  摘要

一、选择题

1. 若已有定义语句:inta ,b ,c ; ,且变量已正确赋初值,则以下选项中正确的赋值表达式是( )。

A.a=(b=c)+8;

B. (a=b)=c=9;

C.a=(b==c)=‘A ’;

D.a+b=c+l;

【答案】A

【解析】A 项正确,将c 赋值给b 后又加上8,然后再赋值给a ; B 、D 项错误,赋值运算符左边必须是一个变量;C 项错误,(b==c)是个表达式,语法错误。

2. 若要实现total=l+2+3+4+5求和,以下程序段错误的是( )。

A.

B.

C.

D.

【答案】A

【解析】A 项执行过程为:i=l,total=l,判断while 循环条件1<5成立,total=l+l,i=2; 判断循环条件执行函数体,直到i=4, total=l+l+2+3+4, i=5; i=5循环条件不成立,退出循环,A 项不能

实现题目要求,错误。B 项执行过程:i=l,total=0,1<=5成立,total=0+l=l,i=2; 直到i=5,total=l+2+3+4+5,i=6; i=6条件不成立,退出循环,程序正确。C 项执行过程:

立,;直到

成立,total=0, i=l;

直到条件不成立,退出循环,程序正确。D 项执行过程:

i=6; i=6条件不成立,退出循环,程序正确。

3. 如有表达式

A.w==l

B.w==0

c. D.

【答案】D 则其中与w 等价的表达式是( )。 成

【解析】在C 语言中,没有专门的“逻辑值”,而是用非0表示“真”,用0表示“假”。此条件表达式的形式为<表达式1>?<表达式2>:<表达式3>, 当表达式1的值为真,即为非零时,求出表达式2的值作为结果;当表达式1的值为假,求出表达式3的值作为结果。可见表达式W 等价于W!=0。A 项,w==l表示当w 的结果为1是返回(-X ),不为1时返回(++y)。

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

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

B. 用户定义的函数中可以有多个return 语句,以便可以调用一次返回多个函数值

C. 用户定义的函数中若没有return 语句,则应当定义函数为void 类型

D. 函数的return 语句中可以没有表达式

【答案】B

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

5. 有以下程序:

»

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

A.9, 18

B.8, 11

C.7, 11

D.10, 14

【答案】D

【解析】for 循环语句中令变量a 自増1, 而在循环语句中又令a 自增了2, 所以可看作每次循环a 自增3。第一次循环,a=l,b=b+a=3, a=a+2=3; 第二次循环,a=4,b=b+a=7a=a+2=6; 第二次循环,a=7,b=b+a=14, a=a+2=9; 所以最后退出循环体时a=10,b=14。

6. 若有定义

则执行表达式后a 、b 、c 的值依次为( )。

【答案】C

【解析】根据优先级规则,II 两边都是括号,则从左至右执行括号中的表达式,将的值赋值给a ,即a 为5, 不为0, 则右边的括号不需要再执行。

7. 设有定义:以下不能将一行(不超过80个字符)带有空格的字符串正确读入的语句或语句组是( )。 A. B.

C. D.

【答案】C

【解析】字符串的输入有两种方式:使用scanf ( )函数和使用get ( )函数。scanf 输入时,遇到控制字符 (空格,换行等)就认为字符输入结束,当字符串中含有空格时,用scanf 输入导致字符串输入不完整。

8. 有以下程序:

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

A.256

B.652

C.2560

D.52