{ int i,n,x,sum=0,count=0; double aver;
printf(“Input n:\\n”); scanf(\for(i=1;i<=n;i++){
scanf(“%d”,&x); if(x%2==0){ sum+=x; count++; } }
aver=(double)sum/count; // 或 aver=1.0*sum/count; printf(\ }
16. 统计某科成绩的总分,平均分,及格人数,输入-1时,结束。
#include
{ int score,num=0,passnum=0;
float ave,sum=0; do {
scanf(“%d”,&score); if(score==-1) break;
sum=sum+score;
num++;
if(score>=60) passnum++;
} while(score!=-1); // 或 }while(1); ave=sum/num;
printf(“sum=%f,ave=%f,pass=%d”,sum,ave,passnum);
}
17. 将满足条件pow(1.05,n)<1e6 #include void main() // 运行结果:283, 992137 { float y=1.05; int n=1; for(n=1;;n++) if((pow(y,n)<1e6)&&(1e6 18. 编程,输入n后:输入n个数,根据下式计算并输出y值。 ?x2?sinx?y??2x?x?x2?x?1?#include { int i,n; double x,y; x??2?2?x?2x?2 scanf(“%d”,&n); for(i=1;i<=n;i++) { scanf(“%lf”,&x); if(x<-2) y=x*x-sin(x); else if(x<2) y=pow(2,x)+x; else y=sqrt(x*x+x+1); printf(“y=%f\\n\} } 19. 在正整数中找出1个最小的、被3、5、7、9除余数分别为1、3、5、7的数。 #include void main( ) // 运行结果:313 { int i,j; for(i=1; ; i++) if(i%3==1&&i%5==3&&i%7==5&&i%9==7) break; printf(\ } 20. z=f(x,y)=10*cos(x-4)+5*sin(y-2),若x,y取值为区间[0,10]的整数,找出使z取最小值的 x1,y1。 #include { int x,y,x1,y1; float z,z1; x1=y1=0; z1=10*cos(x1-4)+5*sin(y1-2); // 赋初值 for(x=0;x<=10;x++) for(y=0;y<=10;y++) { z=10*cos(x-4)+5*sin(y-2); if(z printf(“%d,%d\\n”,x1,y1); }