点击查看:全国自考00342高级语言程序设计历年真题及部分答案汇总
一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题卡”的相应代码涂黑。未涂、错涂或多涂均无分。
1.C语言的保留字是( )
A.FILE
B.define
C.Auto
D.Else
2.正确的实型常数是( )
A.1E0
B.E0
C.1E0.0
D.1E
3.设int n=0;,执行表达式n‖(n=-1)‖(n=0)‖(n=1)‖(n=2)后n的值是( )
A.-1
B.0
C.1
D.2
4.设int a=4;,表达式的值不为8的是( )
A.a*=a-2
B.a--, 3*a-1
C.a>1?++a*2:3*a
D.a+=a
5.设int a,b,t;,不能实现a和b的值交换的语句是( )
A.a=t;t=b;b=a;
B.t=a;a=b;b=t;
C.t=b;b=a;a=t;
D.a=a+b;b=a-b;a=a-b;
6.设int x,*p;,正确的赋值语句是( )
A.*p=&x;
B.*p=*x;
C.p=x;
D.p=&x;
7.设int i=1,s=1;,下列能正确计算5!的是( )
A.while(i++<=5) s*=i;
B.for(; i<4 ;i++) s*=i++;
C.do{s*=i;} while(i<=4);
D.for(; i<=5; i++) s*=i;
8.函数float *fun(){……}返回的是( )
A.地址
B.实型值
C.整型值
D.字符常数
9.下列叙述正确的是( )
A.实参不能是表达式
B.函数可以没有形式参数
C.在一个函数中只能有一个return语句
D.函数定义时,若函数类型缺省则默认的类型是void
10.设int m[]={5,4,3,2,1},i=2;,数组元素引用错误的是( )
A.m[--i]
B.m[i*i]
C.m[m[0]]
D.m[i-2]
11.设int n=8;,执行while(n>5){n--; printf('%2d', n);}后的输出结果是( )
A.8 7 6 5
B.8 7 6
C.7 6 5
D.7 6
12.设int b,a[]={1,2,3,4}, *p=a;,与b=*p++;等价的语句是( )
A.b=*(++p);
B.b=*(p++);
C.b=p++;
D.b=*++p;
13.定义二维数组并初始化正确的是( )
A.int a[3][3]=[0,1];
B.int a[3][3]={0,1,2,3,4,5,6,7,8,9};
C.int a[3][]={{1,2},{3,4}};
D.int a[][3]={{0},{1,2},{3,4,5}};
14.设typedef char *POINT;,若有引用POINT p,q[5];,则( )
A.p是字符型变量,q是字符型数组
B.p是字符型变量,q是字符型指针数组
C.p是字符型指针变量,q是字符型数组
D.p是字符型指针变量,q是字符型指针数组
15.文件使用方式“wb”的含义是( )
A.对文本文件只写
B.对二进制文件只写
C.对文本文件读和写
D.对二进制文件读和写
二、填空题(本大题共10小题,每小题2分,共20分)
11.设int x=3;,执行printf('%d\n', x+(x-=x*x));后的输出结果是__________。
12.b2-4ac≥0对应的C语言关系表达式是__________。
13.设char str[10]='abc';,执行printf('%s\n', strcpy(str,'Spain'));后的输出结果是__________。
14.运算符“==”的优先级比运算符“=”的优先级__________。
15.设int a=123;,表达式a/10%10的值是__________。
16.设char *p='Superstar';,执行printf('%c%s\n', *p, p+6);后的输出结果是__________。
17.局部变量默认的存储类型是__________。
18.执行printf('%d\n', 2^4);后的输出结果是__________。
19.从键盘输入含有空格的字符串,使用的系统函数是__________。
110.执行printf('%5.2f\n', (int)10.0%2+12.34);后的输出结果县__________。
三、程序分析题 (本大题共4小题,每小题4分,共16分)阅读下列程序,将输出结果写在答题卡上。
21.#includevoid main() { int y=10; for(; y>0; y--) if(y%3==0) { printf('%3d',--y); continue; } printf('\n'); }
22.执行下列程序,输入数据:abcd↙
23.int fun(int m) { static int n=1; ++m; n++; return(m+n); } void main() { int a,b; a=fun(0); b=fun(10); printf('a=%d,b=%d\n', a, b); }
24.#includeint x=1; void fx(int p) { x=p+x; p++; } void main() { int a=3; fx(a); printf('%d %d\n', a, x); }
四、程序填充题(本大题共3小题,每小题6分。共18分)请把下列程序的横线处补充完整。使其能正确运行,并在答题卡上作答。
31.计算s=1+2+3+……+n,直到s的值大于1000为止,输出s和n的值。
32.某班30名学生,由键盘输入每个学生的姓名和两门课的成绩,输出其中两门课都通过(成绩大于等于60分)的学生姓名和成绩。
33.打印如下的乘法表。12 43 6 94 8 12 16……9 18 27 36……81void main(){ int i, j; for(i=1; _____①____; i++) /* 第一空 */ { for(j=1; j<=_____②____; j++) printf('%5d', i*j); /* 第二空 */ _____③____; /* 第三空 */ }}
五、程序设计题(本大题共2小题,每小题8分。共16分)
41.由键盘输入10个实型数到数组,求它们的平均值,输出平均值和其中大于平均值的数。
42.(1)写出求三角形面积的函数,函数头为:float area(float a,float b,float c)三角形面积公式:
(2)写出主函数,根据下图提供的各边的长度,调用上述函数,计算并输出多边形的面积。
热点关注:2020年各省自考报名时间及入口 |2019年4月各省自考考试真题及答案汇总