《C语言》综合试卷
C语言综合试卷 总分9030分 班级 姓名 学号 得分 一、程序设计题本大题共4小题,共70分 1、程序分析题,写出下列程序运行的结果。每小题5分,共30分 ⑴、写出下列程序的运行结果 includestdio.h void main { int i,j,kll; whileik-l k-3; ifk50 i;continue;} else ifk5 break; i; } printfid,kd\n,i,k; ⑵、下列程序的运行结果是 includestdio.h void main int i,r; charsl[80]nTomn; char s2[80]nTooln; forirO;sl[i] \0s2[i] \0;i ifsl[i]s2[i] i; else rs2[i]-sl[i]; break;} printfnd,r; } ⑶、下列程序的输出结果是 includestdio.h void main chars[HBACDAC; int k; char c; forkl;cs[k],\0,;k switchc case W putchar; continue; case B k; break; default putchar*; case C putchar; continue; putchar*; } ⑷、运行以下程序时,从键盘输入China CR Beijing CR表示回车, 则下面程序的功能是 o include stdio.h includestring.h void main char a[2][80],t; int i,j,m,n,l,max; fori0;il;i getsa[i]; maxa[0][0]; fori0;il;i lstrlena[i]; forj0;jvl;j ifa[i][j]max maxa[i][j]; mi; nj;} printfc d d\n”,max,m,n; } 5、写出下列程序的运行结果 include stdio. h fint a {int b0; static int c3; a 二 c, b; return a; } main int a2, i, k; for i0;i2;i kfa; printf kd\n”,k; } 6、写出下列程序的运行结果 includestdio.h void main char str[]cdgmcjck; abcstr; putsstr; } abcchar *p { intij; forij0; *pi\O; i if*pih*pj*pi;j;} *pj\O; } 2、程序填空题每空5分,共30分; ⑴、若有以下输入,5 3 72 84CR CR代表回车,输出结果如下图,请 完成程序曲功能。 void main 453728 845372 284537 728453 372845 537284 { int a[6],i,j,k,m; fori0;i6;i scanfndn,a[i]; fori5;i0;i forj4;j0;j- a[0]k; form0 ;m6 ;m printfn2d,a[m]; } } ⑵、以下程序是将一个十进制整数m转换成16进制字符串,请完成程序。 char *trdecint idee, int ibase char strdr[20], t; int i, idr, p0; whileidec0 idr ifidr10 strdr[p] idr-1065; else idec/ibase; } fori0; ip/2; i tstrdr[i]; strdr[i]strdr[p-i-l ]; strdr[p-i-l]t; } retum strdr; main int x, d; scanf”%dd”,x, d; printfs\nu, trdecx,d; } 3、程序改错,不得增行或删行。每小题10分,共20分 ⑴、下列程序是使用筛选法输出100以内的素数。程序中有两处错误,请划 出,并改正。 include math.h define N 101 main inti,j,n,a[N]; fori2;iN ;ia[i]i; fori2;isqrtN ;i forji1 ;j N ;j ifa[i]0a[j]0 ifa[i]a[j]0 a[j]0;} printf\n‘‘; fori2,n0;iN;i {ifa[i]0 {printf%5d”,a[i];n;} ifn10 {printf\n‘‘; n0;} } } ⑵、将一个正整数分解为质因数,例如输入90,打印出902*3*3*5,程序中 有两处错误,请划出并改正。 main int n,i; printf“请输入一个正整数\n”; scanfd”,n; printfndn,n; fori2;in;i whileni ifniO { printf”%d*”,i; nni; } else continue; } } printfndn,n;} 4、程序设计10分 ⑴、有一有序数列,从键盘输入一个数插入数列中仍然有序,请编程实现。 2、下面程序的功能是,显示file.txt文件中第n个字符开始的连续3个字符。 在程序的横线处填写正确的语句或表达式,使程序完整。 include stdio.h main FILE *fp; char ch; long n; int i; clrscr; if {printf“不能打开文件”;exitO; } printf“输入字符位置