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

2017年南昌航空大学程序设计考研复试核心题库

  摘要

一、选择题

1. 以下选项中关于C 语言常量的叙述错误的是( )。

A. 所谓常量,是指在程序运行过程中,其值不能被改变的量 B. 常量分为整型常量、实型常量、字符常量和字符串常量 C. 常量可分为数值型和非数值型常量 D. 经常被使用的变量可以定义为常量 【答案】D

【解析】常量是指在程序运行过程中其值不能被改变的量。在C 语言中,有整型常量、实型常量、字符常量和字符串常量等类型。整型常量和实型常量又称数值型常量,它们有正值和负值的区分。所谓变量是指在程序运行过程中其值可以改变的量。C 语言规定,程序中所有变量都必须先定义后使用。变量和常量有明显的区分。

2. 以下选项中叙述正确的是( )。

A.

是合法的变量定义语句

B. 数组说明符的一对方括号中只能使用整型常量,而不能使用表达式 C. 数组下标的下限可以是负值 D. 若有数组定义【答案】A

【解析】A 项正确定义了字符变量cl 、c2, 字符型指针c3, 字符型一维数组

,A

项正确。

是下标运算符,“下标”可以是任何非负整型数据,取值范围是0〜(数据元素的个数一1)。在引用数组元素时,下标运算符内可以是常量也可以是变量或者表达式,B 项错误。数组下标的下限不可以是负值,C 项错误。数组下标必须是整型数据,3.12为浮点数,D 项错误。

3. 已知大写字母A 的ASCII 码是65,小写字母a 的ASCII 码是97。以下不能将变量c 中的大写字母转换为对应小写字母的语句是( )。

A.c=c+32 B. C. D. 【答案】B

【解析】大写字母转换为对应小写字母,即加上32, B 项不是累加32。

4. 若想给已定义为int 型的变量a 、b 、c 、d 赋整数1,以下选项中错误的语句是( )。

A.d=c,c=b,b=a,a=l;

第 2 页,共 23 页

则语句是合法的

B.d=c=b=a=l; C.d=(b=c=(a=l); )D.d=l,c=d>b=c,a=b; 【答案】A

【解析】赋值是将一个常量的值赋给一个变量,A 项中,变量c 初始值未定义,相当于一个未知数给变量d 赋值,不满足赋值为1的条件。

5. 有以下程序:

程序的运行结果是( )。 A.y=0 B.y=l C.y=2 D.y=3

【答案】D

【解析】数组a 定义结果为,后,p 指向数组元素

6. 有以下程序

程序运行后的输出结果是( )。 A.-12 B.9 C.0 D.3

【答案】A

【解析】C 语言中,

表达式从右向左计算。

等价于

可以写成

等价于

指针P 指向

执行一p ; 语句

y 的值为指针p 所指向的地址的存储值为3。

7. 若有定义doublea=22; inti=0,k=18; ,则不符合C 语言规定的赋值语句是( )。

A.a=a++,i++

B.i=(a+k)<=(i+k) C.i=a%ll D. 【答案】C

第 3 页,共 23 页

【解析】C 项错误,在C 语言的算术运算符中,取余运算符“%”的左右两侧的两个运算分量必须是整数。A 项,赋值运算符的优先级高于“,”运算法,先进行赋值;B 项,将“=”右边的逻辑表达式的计算结果赋给变量i ; D 项,首先对变量a 求逻辑非操作,然后将结果赋值给变量i 。

8. 在C 语言中,只有在使用时才占用内存单元的变量,其存储类型是( )。

A.auto 和 register B.extern 和 register C.auto 和 static D.static 和 register 【答案】A

【解析】C 语言中,动态存储区域中存放的变量在使用时才分配内存空间,函数调用时返回auto 变量的储存处单元是分配在内存的动态的地址和自动类 局部变量等存放在动态存储区域中。

存储区中,每当进入函数体时自 动分配存储单元。register 变量也是自动类变量, 。static 说明的变extern 量为静态变量,静态变量在内存的静态存储中 占据着永久的存储单元,直至程序运行结束。说明的变量为外部变量,属于全局变量,全局变量在整个程 序运行期间都占用内存空间。

二、设计题

9. 函数fun 的功能是:将8所指字符串中除了下标为奇数、同时ASCII 值也为奇数的字符之外,其余的所 有字符都删除,串中剩余字符所形成的一个新串放在t 所指的数组中。。

例如,若s 所指字符串中的内容为但所在元素

的下标为偶数,因此必须删除;而字符1的ASCII 码值为奇数,所在数组中的下标也为奇数,因此不应当删除, 其他依此类推。最后t 所指的数组中的内容应是文件句。

给定源程序:

第 4 页,共 23 页

其中字符A 的ASCII 码值虽为奇数,

注意:部分源程序存在

中。

请勿改动主函数main 和其他函数中的任何内容,仅在函数fun 的花括号中填入编写的若干语