点击查看:全国自考00342高级语言程序设计历年真题及部分答案汇总
一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题卡”的相应代码涂黑。未涂、错涂或多涂均无分。 1.下列为C语言保留字的是( ) A.Auto B.break C.main D.then 2. 正确的C语言常数是( ) A.1.0E0 B.'16' C.true D.1E0.0 3.设int n;,执行表达式(n=2)&&(n=1)&&(n=0)后,n的值是( ) A.3 B.2 C.1 D.0 4.值为1的表达式是( ) A.3&4 B.2>5 C.!!8 D.0!=0 5.循环体至少被执行一次的是( ) A.for语句 B.while语句 C.do……while语句 D.continue语句 6.设char str[20];,从键盘能完整地输入字符串“I am a student.”的语句是( ) A.str=gets(); B.gets(str); C.scanf("%s", str); D.scanf("%c", str); 7.函数int fun(){ return(8.8); }的返回值是( ) A.0 B.1 C.8 D.8.8 8.设int a[]={1, 2, 3, 4}, b, *p=a;,执行语句b=*++p;后,b的值是( ) A.1 B.2 C.3 D.4 9.下列不是C语言运算符的是( ) A.sizeof B.= C.== D.< > 10.设int a=10, *p;,使p指向变量a的语句是( ) A.a=p; B.p=a; C.*p=*a; D.p=&a; 11.设typedef float *FT;,与FT x;等价的是( ) A.float *x; B.float x; C.typede fx; D.typedef *x; 12.正确定义数组并初始化的是( ) A.int a[3]={1, 2, 3, 4, 5}; B.int a[3]={a, b, c, d, e}; C.int b[][3]={1, 2, 3, 4, 5, 6}; D.int b[3][]={1, 2, 3, 4, 5, 6}; 13.函数的递归调用是( ) A.函数的自我调用 B.函数的嵌套调用 C.自定义函数调用主函数 D.系统函数调用主函数 14. 设struct ab{ int a; float b; }c, *p=&c;,引用不正确的是( ) A.*p.a B.b C.p->a D.(*p).b 15.文件使用方式"wb"的含义是( ) A.只读文本文件 B.只写二进制文件 C.读写文本文件 D.读写二进制文件 二、填空题(本大题共10小题。每小题2分,共20分) 11. ![]() 的c语言表达式是_________。 12.设int i, j;,执行下列循环语句后输出"APEC"的行数是_________。for(i=0; i<5; i++) for(j=2; j< j++)> 13.结构化程序设计的三种基本结构分别是:顺序结构、循环结构和_________。 14. 设int a=6, b=8;,执行语句printf("%du", a!=b?a:b);后的输出结果是_________。 15.在文件使用中,EOF的值是_________。 16.设int x, y, t;,执行语句t=(x=6, y=5, x+y);后t的值是_________ 。 17.变量的存储类型符分别是auto、register、extern和_________。 18. 设char s[20]= "Teacher";,执行语句printf("%s\n", strcpy(s, "Student"));后的输出结果是_________。 19.设char *st="China,Beijing";,执行语句printf("%s\n", st+6);后的输出结果是_________。 110.设int a=2, b=3, c=4;,执行语句a%=b+c; printf("%d\n", a);后的输出结果是_________。 三、程序分析题(本大题共4小题,每小题4分。共16分)阅读下列程序,将输出结果写到答题卡上。 21.#include void f(int x, int *y){ *y+=++x; }void main(){ int a=7, b=8; f(a, &b); printf("a=%d, b=%d\n", a, b);} 22.#include int fun(){ int m=1; static int n=2; ++m; ++n; return(m+n);}void main(){ int a, b; a=fun(); b=fun(); printf("a=%d, b=%d\n", a, b);} 23.#includevoid main(){ int i; for(i=9; i>=1; i--) { if(i<=5) break; printf("%3d", i); } printf(" \n");} 24.#include #define PR printf("x=%d, y=%d\n", x, y);int x=1, y=10; /*全局变量*/void fun(){ x++; PR; }void main(){ int x=8; fun(); PR;} 四、程序填充题(本大题共3小题,每小题6分,共18分)请将下列程序缺少的部分填写在答题卡上,使其能正确运行。 31.输出下列图形。ABABC……ABCD……Z#include void main(){ char ch1, ch2; for(ch1='A'; ____①_____; ch1++) /*第一空*/ { for(ch2='A'; ch<=ch; ____②_____) printf("%c",ch2); /*第二空*/ ____③_____; /*第三空*/ }} 32.输入X的值,按下列公式计算并输出y的值。 ![]() 33.统计文本文件 letter.txt中字符'b'、'e'、'g'、'i'和'n'各自出现的次数。#include void main(){ char ch; FILE ____①_____; /*第一空*/ int b=0, e=0, g-0, i=0, n=0; fp=open("letter. txt",____②_____); /*第二空*/ while(!feof(fp) { ch=fgetc(fp); switch(____③_____) /*第三空*/ { case 'b': b++; break; case 'e'. e++: break; case 'g': g++; break; case ' i': i++; break; case 'n': n++; } } printf("%d,%d,%d,%d,%d\n", b, e, g, i, n); fclose(fp);} 五、程序设计题 (本大题共2小题,每小题8分,共16分) 41. 任意输入一个三位正整数,若个位和百位上的数字相等称为“回文数”(如121),则输出“Yes”,否则输出“No”。 42. 从键盘分别输入数据到整型数组a和b,将该两个数组的对应元素之和存入数组c中,并将c中全部元素的值输出。其中数组a、b和C的长度均为100。
热点关注:2020年各省自考报名时间及入口 |2019年4月各省自考考试真题及答案汇总
2020年自考报名有疑问、不知如何选择主考院校及专业,立即报考咨询>> |