当前位置:首页 > C语言期末考试试卷及答案2
3. 以下函数用选择法对一个整数数组进行排序,请填空:
sort(int x[],int n) {
int h,j,k,t;
for(h=0;____________;h++) {
k=h;
for(j=h+1;j if(x[j]>x[k]) ___________________; if(k!=h) { t=x[h];x[h]=x[k];x[k]=t;} } } 4.以下程序用数组求Fibonacci数列的前20项,每5个一行输出,请填空: #include int f[20]={________________}; /*填空*/ for(I=2;I<20;I++) f[I]=f[I-2]+f[I-1]; for(I=0;I<20;I++) { if(I%5==0) printf(______________);/*填空*/ printf(“d”,f[I]); } } 5. 下列程序的功能是将一个结构体数组写入一个文件中保存起来,请填空: #include ________________________; struct Test x[3]= { {“test1”},{“test2”},{“test3”}}; int i; fp = fopen (“d:\\\\cwz\\\\abc.bat”, ”wb”) ; for (i=0; i<3; i++) ________________________; _________________________; } 五、程序设计题 (本大题共2小题,第一题7分,第二题8分,共15分) 1. 设计一个显示文本文件内容的程序,文件名随程序执行时输入。 2.编写程序,根据输入的三个边长a、b、c,判断它们是否构成三角形,若能构成三角形,继续判断该三角形是等边、等腰还是一般三角形,并求出此三角形的面积和周长。 参考答案: 一、单项选择题 1.C 2.A 3.B 4.B 5.D 6.B 7.C 8.C 9.A 10.B 11.D 12.B 13.C 14.D 15.B 16.C 17.A 18.D 19.A 20.C 二、填空题 1. (n>m)&&(n%2==0) 2. stdin stdout 3. 1 0 4. 定义它的函数范围内有效 5. int * *z 6. sqrt() sin() 7. struct test x,y x.a=3;x.b=5 y.a=x.a+x.b 8. enum 9. fopen(“a.txt”, “r”) fopen(10. 3.14*(r)*(r) 三、程序分析题 1. Your $3.0yuan/hour 2. -1 3. 10,10,12, 4. 123 5. 1,2,3,5 四、程序填充题 1. int x; x%2==0 else 2. float f,sum; sum=sum+f; 3. h k=j 4. 0,1 “\\n” 5. FILE *fp; fwrite(&x[i],sizeof(struct test),1,fp); fclose(fp) 五、程序设计题 1. #include main() {FILE *fp; char name[20]; printf(“input filename”); scanf(“%s”, name); if((fp=fopen(name,”r”))==NULL) “a.txt”, “w”) {printf(“cannot open file\\n”); exit(0); } while (!feof(fp)) putc(fgetc(fp)); fclose(fp); } 2.#include \#include \main() { float a,b,c,cir,area; scanf(\ if ((a+b>c)&&(b+c>a)&&(a+c>b)) {if (fabs(a-b)<1e-6&&fabs(b-c)<1e-6&&fabs(a-c)<1e-6) printf(\ else if (fabs(a-b)<1e-6||fabs(b-c)<1e-6||fabs(a-c)<1e-6) printf(\ else printf(\ cir=(a+b+c)/2; area=sqrt(cir*(cir-a)*(cir-b)*(cir-c)); printf(\ area=%.2f\\n\ } else printf(\ a triangle\ getch(); }
共分享92篇相关文档