C语言求助:写了个程序,可以运行,但输入负数时不能结束输入,怎么解?

2025-02-25 18:29:11
推荐回答(1个)
回答1:

#include 
void main()
{
float a[5];
float b=0,c,t;
int i,j,k,g;

printf("请输入若干个学生成绩:");
for(i=0;i<5;i++) //这里必须输入5个数,不是按负数来判断结束的!!
scanf("%f",&a[i]);

for(j=0;j<5;j++)
{
b=a[j]+b;
}

c=b/j;
printf("平均分为%.2f\n",c);

printf("低于平均分的成绩:\n");

for(j=0;j<5;j++)
{
for(k=0;k<4-j;k++)
{
if(a[k]>a[k+1])
{
t=a[k];a[k]=a[k+1];a[k+1]=t;
}
}
}
g=0;//给个初值0
for(i=0;i<5;i++)
if(a[i] {
printf(" %.2f ",a[i]);
g+=1; //累加一个
}

printf("\n成绩低于平均分的人数:%d\n",g);
}