2018年上海海事大学文理院828数据结构及程序设计之C程序设计考研核心题库
● 摘要
一、选择题
1. 执行以下程序段后,w 的值为( )。
A.-1 B.NULL C.1 D.0
【答案】C 【解析】
因为真,因此
2.
若有定义语句
A.char B.int C.double D.float 【答案】c
都是非零整数,
因此的值为1。
则表达式
值的类型是( )。 又因为
知
也为
【解析】在多目运算符相关联的运算数中,如果类型不一致,系统将自动进行类型转换,使两边的类型达到一直后,再进行运算,转换的规则是由“低到高”。double 型,即选择答案C 。
3. 有以下程序:
程序运行的结果是( )。
第 2 页,共 43 页
是字符型,a 是整型,b
是double 型。字符型数据占1个字节,整型占2个字节,double 型占8个字节,故三者相加后为
【答案】D
【解析】
外层主循环从3减到1执行了 3次,嵌套的循环j 从1增到2, 每轮执行2次。每次输出
的值,就可以得到
每次换行发生在外循环完成一次循环之
后。
4. 以下叙述中正确的是( )。
A. 在C 语言中,预处理命令行都以“#”开头 B. 预处理命令行必须位于C 源程序的起始位置 C.#include
D.C 语言的预处理不能实现宏定义和条件编译的功能 【答案】A
【解析】编译预处理”就是在C 编译程序对C 源程序进行编译前,由编译预处理程序对这些编译预处理命令行进行处理的过程。A 项正确,在C 语言中,凡是以“#”号开头的行,都称为“编译预处理”命令行。B 项错误,预处理命令行可以出现在程序的任何一行的开始部位,其作C 项错误,#inClUde
D 项错误,预处理可以实现宏定义、条件编译和文件包含。
5. 以下四个程序中,完全正确的是( )。
【答案】B
【解析】A 项中,“main ( )”函数后面不能加分号;C 语言中注释语句的注释方法是
:
或//注释一行,
且
“indUde
6. 有以下程序段:
第 3 页,共 43 页
和不能嵌套使用,C 项错误; D 选项中预编译命令
则A.5 B.10 C.12
D. 无法确定 【答案】A
【解析】当直接用数组名给指针赋初始化值时,表示把数组首地址的值赋给指针,把
7. 以下关于函数的叙述中正确的是( )。
A. 函数调用必须传递实参 B. 函数必须要有形参 C. 函数必须要有返回值
D. 函数形参的类型与返回值的类型无关 【答案】D
【解析】函数参数有两种:形式参数和实际参数,前者函数定义时函数名后括号内是形参列表,每个形参由类型和名称两部分组成。在定义函数时,系统并不给形参分配存储单元,当然形参也没有具体的数值,所以称它为形参,也称虚参。形参在函数调用时,系统暂时给它分配存储单元,以便存储调用函数时传来的实参。一旦函数结束运行,系统马上释放相应的存储单元;后者函数调用时函数名后括号内是实参列表,实参可以是常量、变量或表达式。当函数返回到主调函数时,有时会有数据带给主调函数,也可以没有任何数据返回给主调函数,返 回的数据称为函数的返回值。函数形参的类型与返回值的类型无关,D 选项正确。函数可以没有形参,B 选项错误。函数可以没有返回值,C 选项错误。函数如果没有形参也就不必传递实参,A 选项错误。
8. 有如下程序:
地址赋给
表示将数组第5
个元素地址赋给
表示
故答案为A 选项。
的值为( )。
程序运行后的输出结果是( )。 A.ABCDDCBA B.ABCD C.A
D.DCBA
第 4 页,共 43 页