点击查看:全国自考00342高级语言程序设计历年真题及部分答案汇总
一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题纸”的相应代码涂黑。错涂、多涂或未涂均无分。 1.表达式9%45+15/6*2的值是( ) A.4 B.5 C.10 D.13 2.设int a[10];,则数组a的下标正确的使用范围是( ) A.0到9 B.0到10 C.-1到9 D.1到10 3.执行语句printf("%c", 'A'+3);后输出结果是( ) A.3 B.A C.D D.68 4.设int m1=60, m2=80, m3=100;,表达式m3>m2>m1的值是( ) A.0 B.1 C.60 D.100 5.下列程序段执行后,变量n的值是( )Static int n;do { n=n+1; } while(n<1000); A.1 B.999 C.1000 D.1001 6.设int a, b, c;,执行语句printf("%d", (a=1, b=2, c=3));后输出结果是( ) A.6 B.3 C.2 D.1 7.设int n=2;,执行语句n+=n-=n-n;后n的值是( ) A.0 B.2 C.4 D.6 8.设int a[2][3]={1,2,3,4,5};,数组元素a[1][1]的值是( ) A.1 B.2 C.4 D.5 9.设int a=10, b=20, c=1, d=2;,执行语句if(ad&&(c=10)||c==100) d=200;后,c和d的值分别是( ) A.1和2 B.1和200 C.10和2 D.100和200 10.下列数组初始化后,元素值不全为0的是( ) A.int a[5]={0}; B.int a[5]={'0'}; C.static int a[5]; D.int a[5]={0,0,0,0,0}; 11.设int a[]={11,21,31,41,51,61}, *p=a;,表达式*p++的值是( ) A.11 B.21 C.31 D.41 12.设Struct t{ int a; float b; char c[10];}x[2]={{1, 6.6, "Dollar"}, {2, 9.8, "Pound"}};则执行语句printf("%d,%s", x[1].a, x[1].c);后输出结果是( ) A.1,Dollar B.2,Dollar C.1,Pound D.2,Pound 13.设char s1[10]="Better", s2[10]="Life";,执行语句printf("%s", strcat(s1, s2));后输出结果是( ) A.LifeBetter B.BetterLife C.Better D.Life 14.下列程序段的输出结果是( )int n=6;while(n>3){ n--; if(n%2==0) continue; printf("%d\n", n);} A.13 B.35 C.53 D.654 15.下列程序的输出结果是( )int a=1;int f (){ int a=2; return a; }void main(){ printf("%d,%d", a, f()); } A.1,1 B.1,2 C.2,1 D.2,2 二、填空题(本大题共10小题,每小题2分,共20分) 11.指针变量中存放的是_________。 12.设int a;,从键盘输入数据给变量a的输入语句是_________。 13.break语句除可在循环语句中使用外,还可以用于_________。 14.一个源程序中允许有多个函数,但必须有且只能有一个_________。 15.设int m[10], *p;,使指针变量p指向数组m首元素的语句是_________。 16.运算符+=、&&、<和!中,优先级最低的是_________。 17.设int x=12;,执行语句x>>=2;后X的值是_________。 18.计算 ![]() 使用的系统函数是_________。 19.设char s[20]="Computer";,则strlen(s)的值是_________。 110.表达式(int)(3.5+1/2)的值是_________。 三、程序分析题(本大题共4小题,每小题4分,共16分)阅读下列程序,将输出结果写到答题纸上。 21.void main(){ int k, m; for(m=3; m<12; m++) { for(k=2;k< printf(?%2d?,m); if(k="=m)" break; if(m%k="=0)"> 22.#define N 5void main(){ int k, s1=0, s2=0; for(k=1; k < s1, printf(?s1='%d,s2=%dn",' } s2+="1;" 0: case 3: s1+="1;" 2: 1: { switch(k%4) k++)> 23.int f(int t){ int b; static int c=3; b=c+t; c++; return b;}void main(){ int i, k; for(i=1; i<3; i++) { k=f(i); printf("%2d", k); } printf("\n");} 24.int f(int n){ if(n=2) return 0; else return(n+f(n-2));}void main(){ int a=10; printf("%d\n", f(a));} 四、程序填充题(本大题共3小题,每小题6分,共18分)请将下列程序横线处缺少的部分在答题纸相应位置补上,使其能正确运行。 31.求a、b和c的最大值并输出。#include int f(int x, _________) /*第一空*/{ return(_________?y:x); } /*第二空*/void main(){ int a=3, b=4, c=5, d; _________=f(f(a,b), f(a,c)); /*第三空*/ printf("%d\n", d);} 32. ![]() 33.将一维数组逆序存放后输出。例如int a[3]={1,2,3},逆序存放后int a[3]={3,2,1}。include void move(int *p, int n);void main(){ int i, n=6, a[6]={1,2,3,4,5,6}; move(a, 5); for(i=0; i < *第三空* _________;} p[k]="p[n-k];" c="p[k];" k 五、程序设计题(本大题共2小题,每小题8分,共16分) 41.计算1到100的平方根,并将结果保存至二进制文件root.dat。 42.从键盘输入10个整数,由大到小排序后输出。
热点关注:2020年各省自考报名时间及入口 |2019年4月各省自考考试真题及答案汇总
2020年自考报名有疑问、不知如何选择主考院校及专业,立即报考咨询>> |