全国高等教育自学考试高级语言程序设计77.docx

上传人:b****1 文档编号:10428387 上传时间:2023-05-25 格式:DOCX 页数:11 大小:19.21KB
下载 相关 举报
全国高等教育自学考试高级语言程序设计77.docx_第1页
第1页 / 共11页
全国高等教育自学考试高级语言程序设计77.docx_第2页
第2页 / 共11页
全国高等教育自学考试高级语言程序设计77.docx_第3页
第3页 / 共11页
全国高等教育自学考试高级语言程序设计77.docx_第4页
第4页 / 共11页
全国高等教育自学考试高级语言程序设计77.docx_第5页
第5页 / 共11页
全国高等教育自学考试高级语言程序设计77.docx_第6页
第6页 / 共11页
全国高等教育自学考试高级语言程序设计77.docx_第7页
第7页 / 共11页
全国高等教育自学考试高级语言程序设计77.docx_第8页
第8页 / 共11页
全国高等教育自学考试高级语言程序设计77.docx_第9页
第9页 / 共11页
全国高等教育自学考试高级语言程序设计77.docx_第10页
第10页 / 共11页
全国高等教育自学考试高级语言程序设计77.docx_第11页
第11页 / 共11页
亲,该文档总共11页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

全国高等教育自学考试高级语言程序设计77.docx

《全国高等教育自学考试高级语言程序设计77.docx》由会员分享,可在线阅读,更多相关《全国高等教育自学考试高级语言程序设计77.docx(11页珍藏版)》请在冰点文库上搜索。

全国高等教育自学考试高级语言程序设计77.docx

全国高等教育自学考试高级语言程序设计77

2001年10月全国高等教育自学考试高级语言程序设计

(一)试卷

第一部分选择题

一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内。

1.C语言程序编译时,程序中的注释部分【】

A.参加编译,并会出现在目标程序中

B.参加编译,但不会出现在目标程序中

C.不参加编译,但会出现在目标程序中

D.不参加编译,也不会出现在目标程序中

2.下列表达式的值为0的是【】

A.3﹪5

B.3/5.0

C.3/5

D.3<5

3.正确的C语言用户自定义标识符是【】

A.print

B.float

C.when?

D.random﹪2

4.设inta=3;则表达式a<1&&--a>1的运算结果和a的值分别是【】

A.0和2

B.0和3

C.1和2

D.1和3

5.下列叙述中,正确的是【】

A.引用带参的宏时,实际参数的类型应与宏定义时的形式参数类型相一致

B.宏名必须用大写字母表示

C.宏替换不占用运行时间,只占编译时间

D.在程序的一行上可以出现多个有效的宏定义

6.下列保留字中用于构成循环结构的是【】

A.if

B.while

C.switch

D.default

7.与语句if(a>b)if(c>d)x=1;elsex=2;等价的是【】

A.if(a>b){if(c>d)x=1;elsex=2;}

B.if(a>b){if(c>d)x=1;}elsex=2;

C.if((a>b)&&(c>d))x=1;elsex=2;

D.if(a<=b)x=2;elseif(c>d)x=1;

8.设charx=′a′;则printf(″x=﹪c,y=﹪c\n″,x,97);的输出是【】

A.x=a,y=97

B.x=97,y=a

C.x=97,y=97

D.x=a,y=a

9.设inta[][4]={1,2,3,4,5,6,7,8,9};则数组a的第一维的大小是【】

A.2

B.3

C.4

D.无确定值

10.执行下列程序

inta[3][3]={{1},{2},{3}};

intb[3][3]={1,2,3};

main()

{printf(″﹪d\n″,a[1][0]+b[0][0]);}

后输出的结果是【】

A.0

B.1

C.2

D.3

11.设charstr[100];inti=5;则引用数组元素的错误形式是【】

A.str[i+10]

B.(str+i)

C.(str+i-1)

D.((str++)+i)

12.设intx[]={1,2,3,4,5,6},*p=x;则值为3的表达式是【】

A.p+=2,*++p

B.p+=2,*p++

C.p+=3,*p

D.p+=2,++*p

13.在函数内,定义变量时存储类型符可省略的是【】

A.auto

B.static

C.extern

D.register

14.执行下列程序

inta=3,b=4;

voidfun(intx1,intx2)

{printf(″﹪d,﹪d\n″,x1+x2,b);}

main()

{inta=5,b=6;fun(a,b);}

后输出的结果是【】

A.3,4

B.11,1

C.11,4

D.11,6

15.设有定义语句

struct

{inta;floatb;}d[3]={{1,4},{2,5},{6,7}};

则printf(″﹪3.1f\n″,d[2].a*d[2].b/d[1].b);的输出是【】

A.2.5

B.2.0

C.8.0

D.8.4

16.设有定义语句:

enumt1{a1,a2=7,a3,a4=15}time;

则枚举常量a2和a3的值分别为【】

A.1和2

B.2和3

C.7和2

D.7和8

17.将一个整数10002存到磁盘上,以ASCII码形式存储和以二进制形式存储,占用的字节数分别是【】

A.2和2

B.2和5

C.5和2

D.5和5

18.在文件使用方式中,字符串″rb″表示【】

A.打开一个已存在的二进制文件,只能读取数据

B.打开一个文本文件,只能写入数据

C.打开一个已存在的文本文件,只能读取数据

D.打开一个二进制文件,只能写入数据

19.执行下列程序

#defineF(y)15>>y

#definePRINT(a)printf(″﹪d″,a)

main()

{

PRINT(F

(2));

}

后输出的结果是【】

A.3

B.3.5

C.14

D.7.5

20.main()函数可以带两个形参,一般分为argc和argv,其中argv可以定义为【】

A.intargv;

B.char*argv[];

C.charargv[];

D.char**argv[];

第二部分非选择题

二、填空题(本大题共10小题,每小题2分,共20分)

21.初始化值是0.618的双精度变量a的定义形式为_____________________。

22.表达式!

10!

=1的值是____________________。

23.“20

24.表达式a=1,a+1,a++的值是___________________。

25.设inti=5;则循环语句while(i>=1)i--;执行后,i的值为_______________。

26.被调函数在执行结束时,这个函数中定义的__________________类型的变量不被释放。

27.设

structstudent

{

intno;

charname[12];

floatscore[3];

}sl,*p=&sl;

用指针法给sl的成员no赋值1234的语句是___________________。

28.C语言程序中对文本文件的存取是以________________为单位进行的。

29.设charstring[]=″This_is_a_book!

″;则数组的长度应是________________。

30.设inta[2][3]={{2},{3}};则数组元素_____________________的值为3。

三、程序分析题(本大题共5小题,每小题5分,共25分)阅读下列程序,将输出结果写到各题右侧的空白处

31.inta=200;

main()

{inti;

for(i=1;i<=5;i++)

{a++;

printf(″﹪d,″,a);

s()

}

{

s()

{staticinta=20;

a++;

printf(″﹪d\n″,a);

}

32.#include″stdio.h″

main()

{charc;

c=getchar();

if(c>=′a′&&c<=′z′)‖c>=′X′&&c<=′Z′)c=c-23;

printf(″﹪c\n″,c);

}

设从键盘上输入Next↙

33.#defineN7

main()

{inti,j,temp,a[N]={1,2,3,4,5,6,7};

for(i=0;i

{j=N-1-i;

temp=a[i];a[i]=a[j];a[j]=temp;

}

for(i=0;i

}

34.structporb

{char*name;

intcount;

}x[]={″Lining″,19,″Langping″,21,″Zhujianhua″,20};

main()

{inti;

for(i=0;i<3;i++)

printf(″﹪s:

﹪d\n″,x[i].name,x[i].count);

}

35.main()

{union

{shorta;charch;

}M;

M.a=100;M.ch=′A′;

printf(″﹪d,﹪d,﹪c\n″,sizeof(M),M.a,M.ch);

}

四、程序填充题(本大题共3小题,每小题6分,共18分)给出下列程序,将横线处缺少的部分补上,使其能正确运行。

36.以下程序的功能是用选择法对数组a中的整数由小到大进行排序。

voidsort(intb[],intn)

{inti,j,t;

for(i=0;i

for(______;j

if(b[i]_____b[j])

{t=b[i];_____________;b[j]=t;}

}

main()

{inta[]={5,8,6,2,7,4,1,3};

 inti;

sort(a,8);

for(i=0;i<8;i++)

printf(″﹪5d″,a[i]);

printf(″\n″);

}

37.输入一字符串(换行为结束标志)统计其中数字(0,1,2,…,9不单独统计)、空白和其它字符出现的次数。

#include″stdio.h″

main()

{charc;

int___________________________;

while((c=getchar())!

=′\n′)

{

if(__________________________)digit++;

elseif(c==′′‖c==′\t′)++blank;

else__________________________;

}

printf(″digit=﹪d,blank=﹪d,other=﹪d\n″,digit,blank,other);

}

38.先为数组a输满数据,再为x输入一个数据,在数组a中找出第一个与x相等的元素并将其下标输出,若不存在这样的元素,则输出“Notfound!

”标志。

main()

{inti,x,a[10];

for(i=0;i<10;i++)scanf(″﹪d″,___________);

scanf(″﹪d″,&x);printf(″﹪d″,x);

for(i=0;i<10;i++)if(_________________)break;

if(i_________10)printf(″position:

﹪d\n″,i);

elseprintf(″Notfound!

\n″,x);

}

五、程序设计题(第39小题5分,第40、41小题各6分,共17分)。

39.求出10至1000之内能同时被2、3、7整除的数,并输出。

40.求1到100之间的奇数之和及偶数之和,并将二者输出。

41.输入一字符串,检查是否回文(回文是指正反序相同,如,LeveL),若是则输出“Yes”,否则输出“No”。

高级语言程序设计

(一)试题参考答案

一、单项选择题

1.D

2.C

3.A

4.B

5.C

6.B

7.A

8.D

9.B

10.D

11.D

12.B

13.A

14.C

15.D

16.D

17.C

18.A

19.A

20.B

二、填空题

21.Doublea=0.618;

22.1

23.x>20&&x<=30或者(x>20)&&(x<=30)

24.2

25.0

26.静态存储,或者static

27.P->no=1234;或者(*p).no=1234;

28.字节

29.16

30.a[1][0]

三、程序分析题

31.201,21

202,22

203,23

204,24

205,25

32.Q

33.7654321

34.Lining:

19

Langping:

21

Zhujianhua:

20

35.2,65,A

四、程序填充题

36.

(1)j=i+1

(2)>

(3)b[i]=b[j]

37.

(1)digit=0,blank=0,other=0

(2)c>=′0′&&c<=′9′

(3)++other或者other++

38.

(1)&a[i]或者a+i

(2)x==a[i]

(3)<

五、程序设计题

下述答案仅供参考,若采用其它方法答案,只要正确实现题目要求即可。

39.main()

{inti

for(i=10;i<=1000;i++)

if((i﹪2==0)&&(i﹪3==0)&&(i﹪7==0))

printf(″i=﹪d\n″,i);

}

40.main()

{inta=0,b=0,i;

for(i=2;i<=100;i+=2)

{2+=i;b+=i-1;}

printf(″Sumofevennumber=﹪d\n″,a);

printf(″Sumofoddnumber=﹪d\n″,b);

}

41.#include″string.h″

main()

{inti,n;staticcharstr[80];

gets(str);n=strlen(str);

for(i=0;i

if(str[i]!

=str[n-1-i])

{printf(″No!

\n″);break;}

if(i==n/2)printf(″Yes!

\n″);

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 工作范文 > 行政公文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2