大学c语言程序与设计题库,2016年武汉科技大学计算机科学与技术学院C语言程序设计考研复试题库...

一、选择题

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

A.C 程序总是以main ( )作为程序执行的起始行

B.main ( )函数若不带参数,其后面的一对圆括号可省略

C. 函数体内的定义语句和可执行语句允许任意穿插出现

D.C 语言中的语句之间必须用分号作为分隔符

答:A

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

2. 已定义以下函数

fun 函数返回值是( )。

A. —个整数

B. 不确定的值

C. 形参p 中存放的值

D. 形参p 的地址值

答:A

【解析】题目中fun ( )函数的返回表达式是

型指针,所以该值是一个整数。

3. 有以下程序:

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

A.6

B.7

第 2 页,共 33 页 是形参p 所指内容的值,因为p 为int

C.11

D.12

答:A

【解析

】是字符数组,初始化时未赋初始值的自动赋

函数求字符串长度,统计长度时以结束,即统计到长度为6时结束,strlen 函数返回值为6。

4. 若有定义inta ,b ,c ; 以下选项中的赋值语句正确的是( )。

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

B. (a=b) =c=l:

C.a= (b==c) =1;

D.a+b=c:

答:A

【解析】赋值运算结合性为由右向左结合,赋值运算符左值为变量,右值为变量或常量,且左右两边数据类 型相同才能实现赋值。A 项中,将c 赋值给b ,然后将b 加1赋值给a ,是正确的赋值语句,正确。B 项中,将1 赋值给c , 赋值运算

赋值,错误。C 项中赋值运算

值为表达式,不是变量不能被赋值,D 项错误。 中左值为表达式,不是变量不能被左值为逻辑表达式,不是变量不能被赋值,错误。D 项左

5. 以下函数按每行8个输出数组中的数据:

下画线处应填入的语句是( )。

A.

B.

C.

D.

答:C

【解析】每行输出8个数组数据的实现,即输出8个后就输出一个换行,所以,应该对8取余,当结果为0时输出换行符,即用语句

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

A.C 语言编写的函数源程序,其文件名后缀可以是.C

B.C 语言编写的函数都可以作为一个独立的源程序文件

C.C 语言编写的每个函数都可以进行独立的编译并执行

第 3 页,共 33 页 可表达。

D. —个C 语言程序只能有一个主函数

答:C

【解析】C 源程序经过C 编译程序编译之后生成一个后缀为.OBJ 的二进制文件(称为目标文,然后由称为“连接程序”(Link )的软件,把此.OBJ 文件与C 语言提供的各种库函数连接件)

起来生成一个后缀为.EXE 的可执行文件。只有含有main 函数的经过编译链接才能执行。

7. 以下不能将键盘输入的字符串:This is a string〈回车〉读入到str 中的程序段是( )。

A. B. C. D.

答:A

【解析】在使用scanf 函数时,在输入数据时,遇到空格,或按“回车”键或按“跳格”(Tab )键时该数据 认为结束。A 项中输入This 后有一个空格,认为数据输入结束,以后的数据不能再读入到str 中,故选择A 项。 B 项用getchar 读人字符,键盘输入的所有字符均被认为是有效字符读入,用while 循环控制读入,当读入字符为 回车时结束读入,字符串被正确的读入到str 中。C 项用gets 函数读入字符串,它读入键盘输入的所有字符,遇到回车自动结束读入,所以也能正确读入字符串到str 中。D 项用do...while 和指针循环控制字符输入,依次判断输入字符是否为回车符,若不是回车符则放人字符数组中,直到读入回车符,结束循环,数组str 中正确存放人指定的字符串。

8. 有以下程序:

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

A.8,16

B.16,32

C.8,32

D.16,16

答:C

【解析】带参数的宏定义不是进行简单的字符串替换,而是要进行参数替换不计算,只是进行简单的替换。替换过程是:用宏调用提供的实参字符串,直接置换宏定义命令行中相应形参字符串,非形参字符保持不变。FNA (FNB (a ))的替换过程为:FNA (2+2)替换为2+2X2+2,计算结果为8。FNB (FNA (b ))的替换过程为:FNB (4*4)替换为4X4+4X4=32。程序运行后的输出结果是8,32,故C 项正确。

第 4 页,共 33 页

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值