四、程序填充题(本大题共3小题,每小题6分,共18分) 给出下列程序,将横线处缺少的部分补上,使其能正确运行。 36.键入10个整数,统计其中正数(neg)、负数(pos)和零(zero)的个数并将三者输出。 int neg=0,pos=0,zero=0; void sele(int num) { if(num>0)neg ++; else if(num<0)pos ++; else ______________ ;/ * 第一空 */ } main ( ) { int i,a[10]; for(i=0;i<10;i++) { scanf("%d",&a[i]); printf("%5d",a[i]); self(_________________); / * 第二空 */ } printf("\nneg=%d,pos=%d,zero=%d\n",_______________); / * 第三空 */ } 37.输入一个学生的成绩(在0~100分之间,超出此范围显示错),进行五级评分并显示。 main ( ) { int score; scanf ("%d",&score); printf ("%d->",score); if(__________________) / * 第一空 * / switch (___________________) / * 第二空 */ { case 9: case 10: printf (" Excellent \ n");break; case 8: printf ("Good \ n");break; case 7: printf ("Middle \ n"); break; case 6: printf ("Pass \ n");_______________;/* 第三空 */ default: printf ("No pass \ n"); } else printf ("Input error! \ n"); } 38.键入一个字符串(换行作为结束标志),将该字符串分别写到文本文件(te.dat)和二进制文件(bi.dat)中。 #include<stdio.h> main ( ) { _______________;/* 第一空 */ char str [80]; gets (str); puts (str); te=fopen ("te.dat"_______________); / * 第二空 */ bi=fopen ("bi.dat",_______________); / * 第三空 */ fputs (str, te); fwrite (str, sizeof (str), 1, bi); fclose (te); fclose (bi); }五、程序设计题(第39小题5分,第40、41小题各6分,共17分)。 39.输入一个圆半径(r),计算并输出圆的面积(s)和周长(l). 40.计算当sum=1+ 时,输出N的值。 41.用循环语句输出下列字母编排的三角形。 a ab abc abcd ……… abcde………xyz |