sum=sum+array[i]; aver=sum/10.0; return(aver); }
void main( ) {
/***********FOUND***********/ float score[10],aver ; int i;
printf(\for(i=0;i<10;i++)
/***********FOUND***********/ scanf(\printf(\
/***********FOUND***********/ aver=average(score);
printf(\}
/*------------------------------------------------------ 29【程序改错】
--------------------------------------------------------
题目:利用递归方法求5!。
--------------------------------------------------------
注意:不可以增加或删除程序行,也不可以更改程序 的结构。
------------------------------------------------------*/ #include
int fact(int j);
printf(\}
int fact(int j) {
int sum;
/**********FOUND**********/ if(j==0)
/**********FOUND**********/ sum=1; else
sum=j*fact(j-1);
/**********FOUND**********/
return sum;
/*------------------------------------------------------ 30 【程序改错】
--------------------------------------------------------
题目:编写函数求2!+4!+6!+8!+10+12!+14!。 --------------------------------------------------------
注意:不可以增加或删除程序行,也不可以更改程序的结构。 ------------------------------------------------------*/ #include \long sum(int n) {
/**********FOUND**********/ int i,j;
long t,s=0;
/**********FOUND**********/ for(i=2;i<=n;i+=2) {t=1;
for(j=1;j<=i;j++) t=t*j; s=s+t;}
/**********FOUND**********/ return(s); }
void main() {
printf(\ }
/*------------------------------------------------------ 31 【程序改错】
--------------------------------------------------------
题目:下列给定程序中,函数fun的功能是:判断m是否为素数, 若是返回1,否则返回0。主函数的功能是:按每行5个输 出1-100之间的全部素数。
请改正程序中的4个错误,使它能得出正确的结果。
--------------------------------------------------------
注意:不可以增加或删除程序行,也不可以更改程序的结构。 ------------------------------------------------------*/
#include
/**********FOUND**********/ void fun( int m) {
int i,k=1;
if(m<=1) k=0;
/**********FOUND**********/ for(i=2;i /**********FOUND**********/ if(m%i==0) k=0; /**********FOUND**********/ return k; } void main() { int m,k=0; for(m=1;m<100;m++) if(fun(m)==1) { printf(\ if(k%5==0)printf(\ } } /*------------------------------------------------------ 32 【程序改错】 -------------------------------------------------------- 题目:求100以内(包括100)的偶数之和. -------------------------------------------------------- 注意:不可以增加或删除程序行,也不可以更改程序 的结构。 ------------------------------------------------------*/ #include \void main() { /**********FOUND**********/ int i,sum=0; /**********FOUND**********/ for(i=2;i<=100;i+=2) sum+=i; /**********FOUND**********/ printf(\ } /*------------------------------------------------------ 33 【程序改错】 -------------------------------------------------------- 题目:用起泡法对10个整数从小到大排序。 程序中共有4条错误语句,请改正错误。 -------------------------------------------------------- 注意:不可以增加或删除程序行,也不可以更改程序的结构。 ------------------------------------------------------*/ #include /**********FOUND**********/ void sort(int x[],int n) { int i,j,k,t; for(i=0;i /**********FOUND**********/ for(j=0;j /**********FOUND**********/ if(x[j]>x[j+1]) { t=x[j];x[j]=x[j+1];x[j+1]=t;} } void main() { int i,n,a[100]; printf(\ scanf(\ for(i=0;i scanf(\ sort(a,n); printf(\ for(i=0;i<=n-1;i++) printf(\ printf(\} /*------------------------------------------------------ 34 【程序改错】 -------------------------------------------------------- 题目:函数fun的功能是:求出两个非零正整数的最大公约数, 并作为函数值返回。例如,若给num1和num2分别输入49 和21,则输出的最大公约数为7。 请改正程序中的错误,使它能得出正确的结果。 -------------------------------------------------------- 注意:不可以增加或删除程序行,也不可以更改程序的结构。 ------------------------------------------------------*/ #include int r,t; if(a /**********FOUND**********/ a=b; /**********FOUND**********/ b=t; } r=a%b; while(r!=0) { a=b; b=r; /**********FOUND**********/ r=a%b;} /**********FOUND**********/ return b; } void main() { int num1,num2,a; printf(\ scanf(\ a=fun(num1,num2); printf(\} /*------------------------------------------------------ 35【程序改错】