2014年高级程序设计考研真题答案及解析

考研 希赛网 浏览 249 来源:希赛网

考研真题,是用来研究考试规律的。考生可通过真题,来确定自己的复习范围,来研究考试的重点、难点是哪些内容。希赛网为大家整理2014年高级程序设计考研真题答案及解析,供大家参考!

本文提供2014年高级程序设计考研真题答案及解析,以下为具体内容

1、下列符号中,不是合法转义字符的是( )。

A、'\\'

B、'\018'

C、'\t'

D、'\0'

2、以下初始化语句中能正确赋值的是( )。

A、char a[5]="HELLO";

B、int a=b=1;

C、int *a=1000;

D、int a[3][2]={{0,1},{1}};

3、若a=1,b=2,则执行w=(a<b)?a++:b--;语句后的b的值是( )。

A、0

B、1

C、2

D、3

4、在do-while语句中,条件表达式的值为( )时,结束循环。

A、0

B、1

C、true

D、非0值

5、设a是一个m行n列的二维数组,则a[i][j]是该数组中的第( )个元素。(注:a[0][0]表示该数组中的第0个元素)

A、i*m+j

B、i*n+j

C、j*m+i

D、j*n+i

E、无正确答案

6、若有声明void *fun();下列说法正确的是( )。

A、fun函数无返回值;

B、fun函数的返回值可以是任意的数据类型;

C、fun函数的返回值是指向空类型的指针;

D、fun是一个指向函数的指针,该函数无返回值。

7、以下叙述中正确的是( )。

A、局部变量说明为static存储类,其作用域将被扩大;

B、全局变量说明为static存储类,其生存期将得到延长;

C、任何存储类的变量在未赋初值时,其值都是不确定的;

D、形参可以使用的存储类说明符与局部变量完全相同。

E、无正确答案

8、若有语句int c[4][5],(*p)[5];p=c;能正确引用数组元素的是( )。

A、p+1

B、*(p+3)

C、*(p+1)+3

D、*(p[0]+2)

9、若有定义:union data {long i;short k[6];char c[4];}DATE;,则表达式sizeof(DATA)的值是( )。

A、12

B、20

C、24

D、32

10、若调用fputc()函数输出字符成功,则其返回值是( )。

A、输出的字符

B、0

C、1

D、EOF

1、试题答案:B

试题解析:

【考点】本题考查转义字符。
【解析】由下表可知'\\'表示一个反斜线(\);'\t'表示水平制表符;'\0'表示空字符。而对于'\018',应为八进制,但是其中有数字8,此转义字符错误。故本题选B。

2、试题答案:D

试题解析:

【考点】本题考查变量的初始值。
【解析】使用字符串给字符数组初始化时,数组的长度应始终大于字符串的实际长度。选项A中数组长度等于字符串长度,元素溢出;故错误。
变量必须先定义再使用。选项B中变量b没有定义,故错误。应改为int a=1,b=1;。
不能将整数赋值给指针变量,指针变量只能存放地址(指针)。选项C中本意是将地址2000赋给指针变量,但系统无法辨别它是地址,故判为非法。故错误。
数组初始化时可以对部分元素赋初值。例如:float a[2][3]={{1},{4}};,它的作用是只对各行的第一列(即序号为0的列)的元素赋初值,其余元素自动为0;故选项D正确。综上本题选D。

3、试题答案:C

试题解析:

【考点】本题考查条件表达式。
【解析】语句中a<b成立,则执行表达式a++,故a的值为2;不再执行后面的表达式。故a=2,b=2,本题选C。
条件表达式的一般形式为:表达式1?表达式2:表达式3。它的执行顺序:先求解表达式1;若为真(非0)则求解表达式2,此时表达式2的值就是整个条件表达式的值;若表达式1的值为0(假),则求解表达式3,此时表达式3的值就是整个条件表达式的值。

4、试题答案:A

试题解析:

【考点】本题考查循环结构的判断条件。
【解析】循环结构中,for、while、do-while的条件表达式为真(非0)时,循环继续执行,为假(0)时,循环结束。故本题选A。

5、试题答案:E

试题解析:

【考点】本题考查二维数组的引用。
【解析】C语言规定数组元素的下标从0开始(注:a[0][0]表示该数组中的第1个元素)。数组定义为int a[m][n],表示有m行n列,即一共m行,每行n个元素;则a[i][j]应是数组中第i*n+j+1个元素;ABCD没有符合的选项,故无正确答案。

6、试题答案:C

试题解析:

【考点】本题考查函数的类型。
【解析】无返回值的函数应定义为void型,而不是void *型,故选项A错误。函数的返回值类型在定义时需指定;不可以是任意类型,故选项B错误。声明void *fun();表示函数的返回值是void *型(指向空类型的指针);故选项C正确。指向函数的指针应定义为void(*fun)(),故选项D错误。综上本题选C。

7、试题答案:E

试题解析:

【考点】本题考查局部变量与全局变量的存储类别。
【解析】static类型的变量是静态变量,它的值在函数调用结束后不会消失,而是保留原值;它生成期从定义该变量开始直到程序结束。局部变量是在函数内部定义的变量,它只在本函数范围内有效;故局部变量说明为static存储类(即静态局部变量),其生存期将得到延长,但作用域不变(本函数内),故A选项错误。
全局变量的作用域从定义该变量开始直到程序结束(允许被其他文件引用),全局变量说明为static存储类,其作用域将缩小(只限本文件引用),但生存期不变,故选项B错误。
若定义变量时未赋初值,静态局部变量编译时自动赋初值0,自动变量的值是一个不确定的值;故选项C错误。
局部变量可以使用static,而形参不可以;两者都可以使用auto(自动变量)、register(寄存器变量)类别;故选项D错误。
综上本题选E。

8、试题答案:D

试题解析:

【考点】本题考查指针指向一维数组。
【解析】语句int (*p)[5];表示p为指向包含5个元素的一维数组的指针变量。且有p=c,故p指向二维数组c的第一行,则有:
p+1指向二维数组c的第二行(即c[1]的地址);
*(p+3)指向数组c的第四行的第1个元素(即c[3][0]的地址);
*(p+1)+3指向数组c的第二行的第4个元素(即c[1][3]的地址);
p[0]指向数组c的第一行的第1个元素,则*(p[0]+2)表示数组c第一行的第3个元素(即数组元素c[0][2])。
综上本题选D。

9、试题答案:A

试题解析:

【考点】本题考查共用体类型的存储。
【解析】由题data被定义为共用体变量,故data的长度应是成员变量中最长的成员的长度。那么sizeof(DATE)的值应为2*6=12,故本题选A。
各数据类型所占字节数如下表:

10、试题答案:A

试题解析:

【考点】本题考查文件函数fputc。
【解析】fputc()函数的功能是将字符输出到文件中,成功则返回该字符;否则返回非0。故本题选A。

点击查看【完整】试卷>>

责任编辑:希赛网

📅 本文最后更新于 2023-07-26

温馨提示:因考试政策、内容不断变化与调整,本网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!
新人礼包 新人礼包 课程咨询 课程咨询 企业团报 企业团报 电话咨询 电话咨询

客服热线:400-111-9811

售后投诉:156-1612-8671

公众号 公众号
希赛网公众号二维码
扫二维码 关注希赛网
APP下载 APP下载
希赛网APP下载二维码
扫二维码 下载APP
二维码
二维码
第1步:扫码添加老师微信  第2步:领取备考资料
!
咨询在线老师!