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

2016年武汉纺织大学机械工程与自动化学院C语言程序设计复试笔试最后押题五套卷

  摘要

一、选择题

1. 有以下程序

程序的运行结果是( )。

A.6

B.5

C.4

D.3

答:B

【解析】条件运算符语法形式为:执行规则为:计算表达式expl 的值,测试其是否为0; 如果expl 的值非0, 则对exp2求值,并把这个值作为条件表达式的

结果输出,不计算exp3; 如果expl 的值为0,则对exp3求值,并把这个值作为条件表达式的结果输出,不计算exP2。函数ml 实现返回传入两个参数中的最小值。函数m2实现返回传入两个参数中的最大值。函数fun 实现返回传入两个参数之和。程序执行过程为:调用ml (2, 3)返回2, 调用m2(3, 1)返回3, 调用fun (2,3)返回5,输出结果5,故B 项正确。

2. 设有定义:则以下表达式值为3的是( )。

答:A

【解析】A 项正确,结果为3,

满足题意;B 项为0, C项为2, D项等同于C 项。

3. 以下关于指针的叙述正确是( )。

A. 所有类型的指针变量所占内存的大小是一样的

B. 指针变量所占内存的大小与其类型有关,char 型指针变量只占1个字节,double 型指针变量占8个字节

C. 指针变量可直接指向任何类型的变量,而不会出现编译或运行错误

D. 指针变量既可以直接指向结构体,也可直接指向结构体中某个成员,而不会出现编译或运

第 2 页,共 36 页 表示,A 项可改写成(b )再计算计算的

行错误

答:A

【解析】专门用来存放变量地址的变量称为“指针变量”,所有地址值所占字节都是一样的,故指针变量所占内存大小一样,A 选项正确,B 选项错误。由于一个变量的地址(指针)还隐含有这个变量的类型信息,所以不能随意把一个地址存放到任何一个指针变量中去,只能把具有相同类型的变量的地址,存放到这个指针变量中, 结构体变量与某个成员类型不同,不能用同样的指针指向它们,C 、D 选项错误。

4. 以下关于C 语言数据类型使用的叙述中错误的是( )。

A. 若只处理“真”和“假”两种逻辑值,应使用逻辑类型

B. 若要保存带有多位小数的数据,可使用双精度类型

C. 若要处理如“人员信息”等含有不同类型的相关数据,应自定义结构体类型

D. 整数类型表示的自然数是准确无误差的

答:A

【解析】A 项错误,C 语言中没有逻辑类型,在中才引入的;B 项正确,float 类型称为单精度类型,double 类型称为双精度类型,一般系统中,为float 类型的变量分配4个字节的存储单元,为double 类型的变量分配8 个字节的存储单元。C 项正确,struct 结构体,可以用来描述包含多种基本类型的复杂对象。

5. 有以下程序:

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

A.0

B.3

C.7

D.8

答:B

【解析】C 语言中,字符串没有专门的类型表示,是通过字符数组表示,在字符串末尾用表识字符串结 束。字符串s 的前三个字符满足if 语句,所以所以最后输出n 值为3。

6. 有以下程序:

第 3 页,共 36 页 当遇到时,for 循环终止,

程序的运行结果是( )。

A.3

B.5

C.6

D. 结果不确定

答:A

【解析】( )的优先级大于*,故先将

执行语句

7. 有如下程序:

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

A.Ta=0,b=l

B.Fa=l,b=2

C.Ta=l,b=2

D.Fa=0,b=2

答:C

【解析】程序执行过程为:判断++a==b++是否成立,++a前置运算先加1,则a=l,b++后置运算先取值,则b=l,也即是判断1==1,成立,输出T ,之后b=2,输出a=l,b=2。故C 选项正确。

8. 以下能正确输出字符a 的语句是( )。

答:A

【解析】“格式控制串”用来指定每个输出项的输出格式,对应字符串,对应字符,对应整型。

,单引号里面的内容为字符’a ’,A 选项正确。B 、C 、D 选项双引号里面的内容为字符串“a ”

语句本身就有问题。

第 4 页,共 36 页

强制转化为1,即浮点数被强制转换成1,

计算得