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

下载本文档

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

文档简介

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

00342201810

1、【单选题】计算机可以直接运行的是

汇编语言程序

C语言源程序

A:

可执行程序

B:

目标程序

C:

答D:案:C

解析:C语言源程序经过编译程序翻译成目标程序(扩展名为OBJ),再经过连接生成可

执行文件(扩展名为EXE),可执行文件可以在计算机上直接运行。

2、【单选题】下列为C语言关键字的是

default

include

A:

main

B:

Int

C:

答D:案:A

解析:①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

3、【单选题】下列整型常数正确的是

02689

0x16x

A:

0e0.0

B:

1E3

C:

答D:案:D

解析:该题目标准答案为选项D,老师认为无正确答案详见以下解析在C语言中,整型常

量有三种书写形式:(2)十进制整数:由数字0-9和正负号表示。如:0、-111、+15、21

等。(2)八进制整数(在前面0)。例如00、-0111、+015、021。(3)十六进制整数(在

前面0x)。例如0x0、-0x111、+0xff、实型常量只使用十进制,它的书写形式有两种:

(1)十进制数形式:(必须有小数点)如0.123,.123,123.0,0.0,123。(2)指数形

式:(e或E之前必须有数字;指数必须为整数)如:12.3e3,123E2,1.23e4,e-

5,1.2E-3.5选项A,0开头表示八进制数,但后面出现了8和9,非法;选项B,0x开头

表示十六进制数,但后面出现了x,非法;选项C,指数形式的实型常量,e的后面是小

数,非法;选项D合法的实型常量1000.00不是整型常熟。

4、【单选题】设inta=0,b=0,m=0,n=0;,执行(m=a==b)||(n=a==b)后m和n的

值分别是

0,0

1,0

A:

0,1

B:

1,1

C:

答D:案:B

解析:执行(m=a==b)||(n=a==b),先计算m=a==b,即m=1;根据C语言的规定后面的

表达式n=a==b不再进行计算。

5、【单选题】设inta,b[5];doublec;chard;,下列表达错误的是

\--a

b--

A:

++c

B:

d++

C:

答D:案:B

解析:b是数组名,代表数组首地址,是常量,不能进行b--这类运算。

6、【单选题】设inta,b;,为使a和b分别获得数据10和20,以下输入操作正确的是

scanf(“%d,%d”,a,b);输入10,20<Enter>

scanf(“%d,%d”,&a,&b);输入1020<Enter>

A:

scanf(“%d,%d”,&a,&b);输入a=10,b=20<Enter>

B:

scanf(“%d,%d”,&a,&b);输入10,20<Enter>

C:

答D:案:D

解析:选项A显然错误,输入表中应该是&a,&b。输入格式控制“%d,%d”中除了%d其他

字符原样输入,这里的逗号就需要原样输入,所以只有D是正确的。

7、【单选题】设intx=1,y=-1;,则执行语句printf(“%d\n”,x--&++y);后输出结果

1

0

A:

-1

B:

2

C:

答D:案:B

解析:执行x--&++y,先给y加1变成了0,然后x的值1与0按位与,结果是0。

8、【单选题】设intn;,与表达式!n等价的是

n==0

n==1

A:

n!=0

B:

n!=1

C:

答D:案:A

解析:

9、【单选题】设inta=0,b;,则for(;a==0;a++);和for(b=0;b!=0;b++);的循环

次数分别是

0,0

0,1

A:

1,0

B:

1,1

C:

答D:案:C

解析:a的初值为0,所以a==0成立,循环执行1次,然后执行a++,a的值变成了1,

a==0不成立,循环结束。b的初始值为0,b!=0不成立,循环不执行。

10、【单选题】设intb[][3]={1,2,3,4,5,6,7};,则数组b第一维的长度是

0

1

A:

B:

2

3

C:

答D:案:D

解析:数组初始化了7个元素,7除以3向上取整为3.

11、【单选题】设charstr[]={‘a’,’b’,’\0’,’c’,’d’,’\0’};执行语句

pritf(“%s\n”,str);后输出结果是

ab

cd

A:

abc

B:

abcd

C:

答D:案:A

解析:\0是字符串的结束标志,%s格式输出字符串从第一个字符开始到\0结束。

12、【单选题】设struct{inta,b;}d[3]={{1,3},{2,5},{6,7}};则执行pritf

(“%d\n”,d[2].a*d[2].b/d[1].b);后输出结果是

2

4

A:

5

B:

8

C:

答D:案:D

解析:d[2].a*d[2].b/d[1].b=6*7/5=8

13、【单选题】内存动态存储区存放的变量的类型是

外部静态型

内部静态型

A:

自动型

B:

外部型

C:

答D:案:C

解析:内存动态存储区存放的变量的类型是自动型。静态变量和外部变量都存储在静态

区。

14、【单选题】设intm,n=0,*p1=&m;,则与语句m=n等价的是

m=*p1;

*p1=*&n;

A:

&p1=&*n;

B:

*p1=&*n;

C:

答D:案:B

解析:选项A等价于m=m;选项B等价于m=n;选项C和选项D中&*n非法,显然错误;

15、【单选题】设char*S={“China”};执行语句printf(“%d,%d\n”,sizeof

(s),strlen(S));后输出结果是

5,5

5,6

A:

6,5

B:

6,6

C:

答D:案:C

解析:字符串S的长度显然是5,所以strlen(S)的值是5。而存储字符串S的数组除了存

储这个5个字符,还需要存储字符串收到结束标志\0,所以sizeof(s)的值是6。

16、【问答题】

答案:i=7,s=12

解析:当i是偶数的时候累加到s,当s大于10,循环结束。所以s累加的过程:

s=2+4+6=12。

17、【问答题】

答案:t=25

解析:t=a[0][2]+a[1][1]+a[2][0]=17+6+2=25.

18、【问答题】

答案:SUM=55

解析:函数的递归调用,过

程:SUM(5)=5*5+SUM(4)=5*5+4*4+SUM(3)=5*5+4*4+3*3+SUM(2)=5*5+4*4+3*3+2*2+SUM(1)=

5*5+4*4+3*3+2*2+1=55

19、【问答题】

答案:4

解析:fun(a,b,c)函数调用,传给形参x、y、z的值分别是0、2、4,执行函数fun()后

返回的ma的值是三个数中最大的4。

20、【问答题】

答案:第一空0第二空‘\n’第三空ch>=’0’&&ch<=’9’

解析:变量count用来计数,要初始化为0,所以第一空填0。回车符作为结束标记,所

以第二空填‘\n’。第三个空位置是用来判断是不是数字,所以填

ch>=’0’&&ch<=’9’。

21、【问答题】

答案:第一空*p第二空p第三空*s

解析:第一空定义指向一维数组数组a指针变量P;for循环用来查找数组最大值,指针

变量s指向扫描整个数组过程中最大元素,所以第二空填p;第三空输出最大值,所以填

*s。

22、【问答题】模拟24小时制计时,从键盘输入时间(时分秒的格式为hh:mm:ss),将

时间数值加1秒后输出。

答案:第一空++(或+=1,或=time.ss+1)第二空time.ss第三空time.hh==24

解析:第一空完成加1秒;如果秒变成60了,分钟time.mm加1,time.ss置0,所以第

二空填time.ss;如果小时time.hh等于24则将time.hh置0,所以第三空填

time.hh==24。

23、【问答题】利用公式计算的近似值,直到括号中最后

一项的绝对值小于10-6为止。

答案:

解析:

利用循环先完成,累加的结果乘以4就是要计算的结果。

24、【问答题】从键盘输入两个字符串s1和s2(每个字符串长度不超过80),将两者交

换,并分别输出交换前后的字符串。

答案:

解析:定义两个字符数组存储字符串s1和s2,利用指针变量指向两个字符串,利用指针

操作实现字符串的交换。

25、【填空题】C语言用户标识符的第一个字符必须是下画线或__________。

答案:字母

解析:C语言用户标识符由字母、数字和下划线组成,且第一个字符必须是下画线或字母

26、【填空题】C语言中,整型常量的书写形式包括八进制、十进制和__________。

答案:十六进制数

解析:在C语言中,整型常量有三种书写形式:1.十进制整数:由数字0-9和正负号表

示。如:0、-111、+15、21等。2.八进制整数(在前面0)。例如00、-0111、+015、021。3.

十六进制整数(在前面0x)。例如0x0、-0x111、+0xff、

27、【填空题】若scanf(“%lf”,&a);变量a的数据类型应是__________。

答案:double或双精度型

解析:scanf输入格式控制符“%lf”和“%le”对应的数据对象的类型是double。

28、【填空题】设intx[5];,则数组x的首地址可以表示为&x[0]或__________。

答案:x

解析:数组名代表数组首地址

29、【填空题】若结构体的成员也是结构体,称为结构体的__________。

答案:嵌套

解析:结构体的成员也是结构体,称为结

温馨提示

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

评论

0/150

提交评论