2018年南京林业大学林院809C程序设计考研基础五套测试题
● 摘要
一、选择题
1. 有以下程序:
程序运行后的输出结果是( )。
A. -2 B.
C.-3
D.2.0
【答案】A
【解析】B 、D 项错误,sub ( )函数输出(int
)将结果强制转化为整型
;
C 项错误,A 项正确。
2. 若有定义语句inta=10;doubleb=3.14;, 则表达式'A'+a+b值的类型是( )。
A.char
B.int
C.double
D.float
【答案】C
【解析】在多目运算符相关联的运算数中,如果类型不一致,系统将自动进行类型转换,使
a 是整型,b 是double 两边的类型达到一直后,再进行运算,转换的规则是由“低到高V A' 是字符型,
型。字符型数据占1个字节,整型占2个字节,double 型占8个字节,故三者相加后为double 型,即选择答案C 。
3. 在C 语言中,只有在使用时才占用内存单元的变量,其存储类型是( )。
A.auto 和 register
B.extern 和 register
C.auto 和 static
D.static 和 register
【答案】A
【解析】C 语言中,动态存储区域中存放的变量在使用时才分配内存空间,函数调用时返回
auto 变量的储存处单元是分配在内存的动态的地址和自动类 局部变量等存放在动态存储区域中。
存储区中,每当进入函数体时自 动分配存储单元。register 变量也是自动类变量, 。static 说明的变
extern 量为静态变量,静态变量在内存的静态存储中 占据着永久的存储单元,直至程序运行结束。
说明的变量为外部变量,属于全局变量,全局变量在整个程 序运行期间都占用内存空间。
4. 要求通过while 循环不断读入字符,当读入字母N 时结束循环。若变量已正确定义,以下正确的程序段是( )。
A )
B )
C )
D )
【答案】D
【解析】D 项正确,ch 与
表达式从右向左计算,会把_. 赋值给表示先把函数的返回值赋值给ch ,然后判断函数的返回值是右值,A 项逻辑错误,B 项错误,是否相等。它表示读入字母’N ’时执行循环;函数的返回值,而_
(等于)的优先级高于=(赋值), 不可改变,出现编译错误;C 项逻辑错误,
它等价此时ch 的取值是0或1。
5. 有以下定义和语句:
能给w 中year 成员赋1980的语句是( )。
【答案】D
【解析】w 是一个结构体变量,Pw 是一个结构体指针变量,指向w 所在的内存单元。A 项错误,pw 是指针,
所以在引用其内部变量时应该用操作符
是结构体workers 中的结构体成员s 中的成员。
而不是BC 两项错误,year
6. 有以下函数:
程序运行后的输出结果是( )。
A.3
B.8
C.4
D.9
【答案】B
【解析】strlen 函数的作用是求字符串长度,与均是反义字符,各表示一个字符,所以打印值为8。
7. 以下关于return 语句的叙述中正确的是( )。
A. —个自定义函数中必须有一条return 语句
B. —个自定义函数中可以根据不同情况设置多条return 语句
C. 定义成viod 类型的函数中可以有带返回值的return 语句
D. 没有return 语句的自定义函数在执行结束时不能返回到调用处
【答案】B
【解析】A 项错误,当函数的返回值为void 类型时,函数中可以不含有return 语句;C 项错误,定义成void 类型的函数不可以有带返回值的return 语句,但可以有不带返回值的return 语句;D 项错误,无论函数是否带有 return 语句,当函数执行完后都会返回到调用处。
8. 有以下程序:
程序的运行结果是( )。
A.nice
B.verynice
C.nicegood
D.verygood
【答案】D
【解析】通过赋值运算使一个字符指针指向一个字符串常量:这种形式只是将字符串“nice”首地址赋给指针,而不是将指针原本指向的单元元素改变成“nice”。程序执行过程为:定义字符数 组并且初始化为“verygood”常量,定义指针ps 使其指向数组,使ps 指向数组第5个元素,使指针指向字符串 “nice”,这并不影响s 数组任何元素值,故输出字符串8为