点击查看:全国自考00342高级语言程序设计历年真题及部分答案汇总
一、单项选择题(本大题共1 5小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题纸” 的相应代码涂黑。错涂、多涂或未涂均无分。 1.下列为C语言保留字的是( ) A.auto B.Else C.FILE D.define 2.正确的C语言常数是( ) A.e0 B.1e C.1E0 D.1E0.0 3.设int n;,执行表达式(n=0)||(n=1)||(n=2)||(n=3)后,n的值是( ) A.0 B.1 C.2 D.3 4.值为0的表达式是( ) A.0==0 B.2&&5 C.!5<2 D.2&5 5.先执行循环体后判断循环条件的语句是( ) A.for B.while C.do-while D.for,while和do-while 6.设char str[20];,从键盘输入中间含有空格的字符串的正确语句是( ) A.gets(str); B.gets(str[20]); C.scanf("%s", str); D.scanf("%c", str); 7.定义函数时若函数名前冠有“*”(如float *fun(){……}),则该函数被称为( ) A.int型函数 B.float型函数 C.void型函数 D.指针(型)函数 8.设int a[]={1, 2, 3, 4}, b, *p=a;,与b=*p++;等价的语句是( ) A.b=p++; B.b=*(p++); C.b=*(++p); D.b=*++p; 9.C语言中的sizeof是( ) A.类型名 B.运算符 C.变量名 D.函数名 10.设int a[10], *p=a;,与数组元素a[5]等价的是( ) A.*(a+5) B.p[′5′] C.p+5 D.a+5 11.设typedef char *PT;,若有引用PT q[5];,则q是( ) A.字符型数组 B.字符型变量 C.字符型指针变量 D.字符型指针数组 12.正确定义二维数组并初始化的是( ) A.int a[3][ ]={{1,2,3}, {4,5}}; B.int a[3][3]={a,b,c,d,e}; C.int a[ ][3]={1,2,3,4,5,6}; D.int a[3][3]=(1,2,3,4,5,6); 13.函数的递归调用是指( ) A.函数的自我调用 B.函数的嵌套调用 C.主函数调用系统函数 D.系统函数调用主函数 14.设struct data{int a; float b;}c, *p=&c;,引用正确的是( ) A.*p.a B.p.b C.p->a D.*p->b 15.文件操作"rb+"的含义是( ) A.只读文本文件 B.只读二进制文件 C.读写文本文件 D.读写二进制文件 二、填空题(本大题共10小题,每小题2分,共20分) 11.判断方程ax2+bx+c=0有实根时的C语言逻辑表达式是__________。 12.设int i, j;,执行下列循环语句后输出“ABC”的行数是__________。for(i=0; i<5; i++) for(j=1; j<> 13.结构化程序设计的三种结构分别是:选择结构、循环结构和__________。 14.设int a=1, b=2;,执行语句printf("%d", a>=b?a:b);后的输出结果是__________。 15.在C语言的指针使用中,NULL的值是__________。 16.设int x, y, t;,执行语句t=10+(x=3, y=5, x-y);后t的值是__________。 17.在C语言中,变量的四个存储类型符分别是auto、static、extern和__________。 18.设char s[ ]= "Star";,执行语句printf("%d", strlen(s));后的输出结果是__________。 19.设char *st="China\0Beijing";,执行语句printf("%s",st);后的输出结果是__________。 110.设int a=8,b=2,c=3;,执行语句a%=b+c; printf("%d",a);后的输出结果是__________。 三、程序分析题(本大题共4小题,每小题4分,共16分)阅读下列程序,将输出结果写在答题纸上。 21.#define PR printf("a=%d,b=%d\n",a,b);#include void f(int x, int *y){ *y=++x; }void main(){ int a=10,b=20; PR; f(a,&b); PR;} 22.#include 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);} 23.#include void main( ){ int i; for(i=1; i<=10; i++) { if(i<5) continue; printf("%3d", i); } printf("\n");} 24.#include int x=1; /* 全局变量 */void f(int i){ x=i+x; i++;}void main( ){ int y=5; x++; f(y); printf("y=%d,x=%d\n", y,x);} 四、程序填充题(本大题共3小题,每小题6分,共18分)请将下列程序横线处缺少的部分补在答题纸上,使其能正确运行。 31.按下列形式输出英文字母。 ![]() 32.输入x的值,按下列公式计算并输出y的值。 ![]() 33.分别统计文本文件fs.txt中小写英文元音字母(a, e,i,o,u)的个数并输出。 ![]() 五、程序设计题(本大题共2小题,每小题8分,共1 6分) 41.任意输入一个三位正整数,十位上的数字不动,将个位和百位上的数字交换,构成一个新的正整数后输出。(例如:523变为325) 42.从键盘输入a1,a2….,a20,按下列公式计算并输出b1,b2,….,b10的值。 ![]()
热点关注:2020年各省自考报名时间及入口 |2019年4月各省自考考试真题及答案汇总
2020年自考报名有疑问、不知如何选择主考院校及专业,立即报考咨询>> |