输入多名学生成绩,统计平均分和及格人数,并输出小于平均分的成绩。用C语言编写程序

#include <stdio.h>
void main()
{
int grade,cnt1=0,cnt2=0,cnt3=0;
double avg=0.0;
printf("输入多名学生成绩\n");
scanf("%d",&grade);
whille(grade>=60)
{
cnr1++;
cnt2++;
avg=avg+grade;
scanf("%d",&grade);
}
avg=avg/cnt2;
printf("及格人数%d\n平均分%。2f\n小于平均分的成绩\n".cnt1,cnt2,cnt3);
}
以上程序没有输出小于平均分的成绩~要怎么修改~谢谢啦~~

第1个回答  2011-04-17
#include <stdio.h>
#define MaxNum 100
void main()
{
int grade,cnt1=0,cnt2=0,cnt3=0;
double avg=0.0;
int a[MaxNum];
printf("输入多名学生成绩\n");
scanf("%d",&grade);
while(grade>=60)
{
a[cnt1]=grade;
cnt1++;
cnt2++;
avg=avg+grade;
scanf("%d",&grade);
}
avg=avg/cnt2;
for(int i=0;i<cnt1;i++)
{
if(a[i]<avg)
cnt3++;

}
printf("及格人数%d\n平均分%.2f\n有%d小于平均分的成绩\n",cnt1,avg,cnt3);
}
这个是给你的程序改过之后得到的,其中声明一个数组用来存储每一次输入的成绩,最后通平均成绩比较才能知道有多少小于平均分的成绩
第2个回答  2011-04-17
你的程序本身就编译不过的!有几处错误... 而且程序中有太多含糊的地方,我想你应该把程序写的更详细点,然后清楚用什么变量存放什么内容,然后在输出的时候才能标记清楚输出的是什么内容。追问

麻烦能不能编写一下程序~~

追答

二楼的额正解!你采纳他的吧

本回答被网友采纳
第3个回答  2011-04-20
ine N 10
void main()
{
int a[N],ave,sum=0,pass=0,better=0;
for(int i=0;i<N;i++)
{
scanf("%d",&a[i]);
sum+=a[i];
}
ave=sum/N;
for(int i=0;i<N;i++)
{
if(a[i]>=60)
pass++;
if(a[i]>ave)
better++;
}
printf("平均分:%d\n及格人数%d\n高于平均分人数%d\n",ave,pass,better);

有问题可以hi我,谢谢采纳,我的饿网易编程博客如下图

}
另外,虚机团上产品团购,超级便宜
第4个回答  2011-04-18
ine N 10
void main()
{
int a[N],ave,sum=0,pass=0,better=0;
for(int i=0;i<N;i++)
{
scanf("%d",&a[i]);
sum+=a[i];
}
ave=sum/N;
for(int i=0;i<N;i++)
{
if(a[i]>=60)
pass++;
if(a[i]>ave)
better++;
}
printf("平均分:%d\n及格人数%d\n高于平均分人数%d\n",ave,pass,better);

有问题可以hi我,谢谢采纳,我的饿网易编程博客如下图

}