2016年4月自考00342高级语言程序设计一试题及答案含解析_第1页
2016年4月自考00342高级语言程序设计一试题及答案含解析_第2页
2016年4月自考00342高级语言程序设计一试题及答案含解析_第3页
2016年4月自考00342高级语言程序设计一试题及答案含解析_第4页
2016年4月自考00342高级语言程序设计一试题及答案含解析_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

高级语言程序设计(一)年月真题

0034220164

1、【单选题】C语言的保留字(又称关键字)是

.sum1

.main()

A:

.continue

B:

.integer

C:

答D:案:C

解析:①所有的保留字均由小写字母组成,一旦有一个字母大写,其不再是保留字。②根

据保留字的作用,C语言的保留字分为四类。**数据类型关键字**(12个):char,

double,enum,float,int,long,short,signed,struct,union,unsigned,void**

控制语句关键字**(12个):break,case,continue,default,do,else,for,goto,

if,return,switch,while**存储类型关键字**(4个):auto,extern,

register,static**其它关键字**(4个):const,sizeof,typedef,volatile

2、【单选题】错误的C语言常数是

0

3E0

A:

“d”

B:

‘123’

C:

答D:案:D

解析:“d”是字符串常量,0是整型常量,3E0是实型常量。‘123’是非法的表示。

3、【单选题】设intx=2;,执行语句printf(”%d\n”,x++)后输出结果是

2

3

A:

4

B:

5

C:

答D:案:A

解析:执行语句printf(”%d\n”,x++)是先输出x的值2,然后x的值加1。

4、【单选题】设inta=0,循环次数为0的语句是

while(1);

for(;a!=0;);

A:

for(a;a==0;a++);

B:

do{a++;}while(1);

C:

答D:案:B

解析:选项A,循环无数次,因为1代表循环条件始终成立。选项B,不都是a!=0不成

立,所以循环一次也不执行。选项C,表达式a==0成立,执行1次循环。选项D,循环无

数次。

5、【单选题】if(表达式)中“表达式”的类型是

.逻辑的

.关系的

A:

.算术的

B:

.任意的

C:

答D:案:D

解析:if(表达式)中“表达式”可以是任意类型的表达式。

6、【单选题】设inta=1,b=2,c=3;,能将c的值同时赋给a和b的表达式是

.a=b=c

.a==b=c

A:

.(a=c)||(b=c)

B:

a==b==c

C:

答D:案:A

解析:选项B是非法的表达式:“==”的优先级比“=”的高,所以a==b=c就是0=c,显然

非法。选项C,很具迷惑性,计算表达式(a=c)||(b=c),先计算(a=c),即a=3,表达式

(a=c)的值是1,根据C语音的规定后面的表达式(b=c)不再进行计算,b的值保留为2。

7、【单选题】在一个文件的不同函数中不能重名的是

函数名

形式参数

A:

auto型内部变量

B:

register型内部变量

C:

答D:案:A

解析:形参和内部变量在不同的函数中可以重名,但函数名绝对不能重名,否则调用函数

不知道调用哪一个了。

8、【单选题】下列函数头正确的是

.voidfun(a,b)

.voidfun(inta,b)

A:

.voidfun(inta,intb)

B:

.voidfun(vatinta,varintb)

C:

答D:案:C

解析:形参必须分开写其数据类型,不能不写数据类型,所以选项A和B都错误。选项D

的类型名错误。

9、【单选题】设inta[2][3]={1,2,3,4,5};,值为0的数组元素是

.a[1][2]

.a[1][1]

A:

a[0][1]

B:

.a[0][0]

C:

答D:案:A

解析:对二维数组初始化是按行优先进行的,对其部分初始化后,没有初始化的元素的值

系统自动给其赋值为0。A[0][0]、A[0][1]、A[0][2]、A[1][0]、A[1][1]的值分别是1、

2、3、4、5,A[1][2]的值系统自动赋0。

10、【单选题】下列是递归函数的是

A:

B:

C:

答D:案:C

解析:递归函数是直接或间接调用自身函数。显然只有选项C,n+f(n-1)调用了本身的

f函数。

11、【单选题】设intx=1,y-2,z=3;,下列for语句正确的是

.for(;;);

.for(z=0,z<y;z++);

A:

.for(z=0;z<y,z++);

B:

.for(z=0,z<y,z++);

C:

D:

答案:A

解析:for()语句的括号里必须有2个分号,缺一不可。

12、【单选题】设intx;,与x==0等价的表达式是

.x==1

.!x

A:

.x!=0

B:

.x!=1

C:

答D:案:B

解析:

看下面表格,当x的值为0和非0时各表达式的值,显然x==0等价的表达式是!x。

13、【单选题】正确定义一维数组的是

floatr(6)

floatn=6,r[n]

A:

B:

C:

答D:案:C

解析:定义数值时,数组长度只能是常量,不是变量。选项C的N是符号常量。

14、【单选题】设ints=5,t=6,*p,*q;,下列程序段正确的是

p=&s;q=p;

A:

p=&s;q=*p;

p=&s;q=t;

B:

p=&s;*p=q;

C:

答D:案:A

解析:p和q都是指针变量,给他们赋值只能是地址,他们之间可以相互赋值。

15、【单选题】当文件结束时,系统函数feof()的返回值是

-1

0

A:

1

B:

非0

C:

答D:案:D

解析:feof(fp)有两个返回值:如果遇到文件结束,函数feof(fp)的值为非零值,否则

为0。

16、【问答题】

答案:RussiaChina

解析:country[]是指针数组,country[1]存放的是指向字符串“Russia”的指针,

country[3]存放的是指向字符串“China”的指针。

17、【问答题】

答案:a=14,b=26

解析:第1次循环a=a+2=10+2=12,b=b+a=0+12=12;第**2**次循环a=a+2=12+2=14,

b=b+a=12+14=26;b的值大于20,执行break退出循环,输出a和b的值a=14,b=26。

18、【问答题】

答案:6#5#4#

解析:当i=1,调用fun(5),表达式--y+x+z=-1+5+2=6,y的值为-1,返回6,输出6#

当i=2,调用fun(5),表达式--y+x+z=-2+5+2=5,y的值为-2,返回5,输出5#当

i=3,调用fun(5),表达式--y+x+z=-3+5+2=4,y的值为-3,返回4,输出4#

19、【问答题】

答案:CIA

解析:c%是输出一个字符,i=0,输出字符C,i=2,输出字符I,i=4,输出字符A。

20、【问答题】30*从键盘输入某个职工的工号、姓名和工资保存至结构型变量并输出。

答案:第一空:EMP第二空:第三空:em.number,,em.salary

解析:根据主函数中出现了EMPem;变量定义语句,可以推断出第一空应该填结构体类型

名称EMP。第二空输入姓名,直接填数组名name,name就代表字符串的首地址。第三空输

出结构体变量的三个元素。

21、【问答题】

答案:第一空:0第二空:’A’<=c&&c<=’Z’第三空:s

解析:s显然是用来统计大写英文字母的个数的,初值赋0,所以第一空填0。第二空用来

判断变量c中是大写字母,所以填’A’<=c&&c<=’Z’。第三空用来输出统计结果,填

s。

22、【问答题】从键盘为二维数组输入数据,分别计算并输出两条对角线元素值之和。

答案:第一空:a[i][j]第二空:a[i][i]第三空:sum1,sum2

解析:第一空的语句完成二维数组元素的输入,所以应该填a[i][j]。第二空的语句完成

主对角线元素求和,所以填a[i][i]。第三空的语句输出统计结果,所以填sum1,sum2。

23、【问答题】从文本文件old.txt读取字符,将其中的英文字母'a'、'b'、'c'、'd'和

'e'分别替换为'+'、'-'、'*'、'/'、和'%',其余字符不变,然后写入文本文件new.txt.

答案:

解析:处理步骤:(1)打开两个文件;(2)从源文件逐个读取字符----处理字符---将

字符写入到目标文件;(3)关闭打开的两个文件。

24、【问答题】(1)编写函数fa,计算并输出直角三角形的面积;(2)编写函数fb,计算并

输出梯形的面积;(3)编写主函数,键入直角三角形的底(d)和高(h),调用函数fa计算并输出

该直角三角形的面积;键入梯形的上底(a)、下底(b)和高(c),调用函数fb计算并输出该梯形

的面积。(输出结果保留两位小数)

答案:

解析:题目很简单,注意主函数要写在最后,另外要注意1.0/2不要写成1/2。

25、【填空题】设intx=100;,表达式x%2==(x+1)%2的值是_______。

答案:0

解析:x%2的值是0,(x+1)%2的值是1。

26、【填空题】设inta=2,b=3;表达式a<<b的值是_______。div=""></b的值是

_______。>

答案:16

解析:<b,即2<<3,也就是0000001=""div=""></b,即2<<3,也就是000>

27、【填空题】设chars[10]=”peace”;,执行语句后输出结果是

_______。

答案:5

解析:strlen(s)的值是字符串s的长度,为5,不是数组s的长度。

28、【填空题】设floata;,执行表达式(double)a后,a的类型是_______。

答案:double

解析:执行表达式(double)a完成的功能是把a的数据类型强制转换为double。

29、【填空题】设intx=10,y=20;,执行语句后输出结果是

_______。

答案:20

解析:x>y?x:y是条件表达式,10大于20不成立,表达式的值为变量y的值20。

30、【填空题】设

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论