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

2016年河海大学计算机与信息学院994计算机技术综合之C程序设计复试笔试最后押题五套卷

  摘要

一、选择题

1. 有如下程序:

程序运行后的输出结果是( )。 A.ABC B.012 C.abc D.123 答:B

【解析】while 循环语句执行时,首先判断表达式,成立(非0)则执行循环体,不成立(0)则退出循环。字符之间做加减法,是用其ASCII 码进行加减,所以程序执行过程为:定义字符变量ch=‘A ’,判断‘A ’<‘D ’成立,‘A ’-‘A ’=0,输出0, ch++后,值为‘B ’;判断‘B ’<‘D ’成立,‘B ’-‘A ’=1, 输出1, ch++后,值‘C ’;判断‘C ’<‘D ’成立,‘C ’-‘A ’=2,输出2,ch++后值‘D ’;判断‘D ’<‘D ’不成立,退出循环。程序运行后的输出结果是012, 故B 项正确。

2. 若变量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 语言语法。

3. 以下关于逻辑运算符两侧运算对象的叙述中正确的是( )。

A. 可以是任意合法的表达式 B. 只能是整数0或非0整数 C. 可以是结构体类型的数据 D. 只能是整数0或1 答:A

【解析】C 语言的逻辑运算符比较特别,它的操作数没有明确的数据类型,可以是任意合法的表达式。

4. 以下程序的主函数中调用了在其前面定义的函数fun :

则以下选项中错误的fun 函数首部是( )。

A. B. C. D. 答:D

【解析】由题目可知,fun 函数中定义的应该是一个double 型的指针变量。

5. 有以下程序

程序运行后的输出结果是( ) A.6,4,3,2, B.6,2,1,1, C.1,1,2,6, D.2,3,4,6, 答:A

【解析】第一个嵌套的for 循环功能将对角线上的数据从大到小排序,其他数据不变,排序 值为6,输出第一行为6 4 3 2。 完成后,

6. 有以下程序:

程序运行的结果是( )。

答:D

【解析】对结构体变量赋初值时,相同类型的变量可以通过等号直接赋值,它会将每个成员在结构体中的顺一一对应赋初值,

可知

输出函数中要求输出的浮点数有效位为2位。

7. 若有定义语句:

A.p=s B.p=k C. D.k=s 答:C

则以下赋值语句正确的是( )。

【解析】A 项错误,是将二维数组赋值给了一个指针;B 项错误,是将一位数组的指针赋值给了一个指针; C 项正确,是将一个一维数组赋值给了一个指针;D 项错误,是将二维数组赋值给了指向一维数组的指针。

8. 以下选项中正确的定义语句是( )。

答:C

【解析】定义同一类型的变量时,不同变量之间需要用

分隔。A 项错误,a 和b 之间缺

少逗号而用分号,是不正确的,分号是语句结束标志;B 项错误,定义变量的同时为变量初始化赋值不能用连等;D 项错误,在double 和a 之间多了一个逗号,变量类型说明后面不应用逗号,应用空格分离。