我又有问题了。。。结构体数组。。。老师还说要用输入负数就结束,可我只能二选一啊。就没写这步
就是总分那里怎么记录不了啊,上一个也是这么写的,就可以记录啊,why????#include<stdio.h>
#include<stdlib.h>
#include<math.h>
struct list
{
int num;
int name;
int grade;
double sum;
double ave;
};
struct list stu[30];
int main()
{
int i,n,y=0,x=0;
printf("请输入学生人数:");
scanf("%d",&n);
for(i=0;i<n;++i)
{
printf("输入学生的学号:");
scanf("%d",&stu[i].num);
printf("输入学生的分数:");
scanf("%d",&stu[i].grade);
}
printf("不及格名单:\n学号\t成绩\t\n");
for (i=0;i<n;++i)
{
if(stu[i].grade<60)
{
printf("%d\t",stu[i].num);
printf("%d\t\n",stu[i].grade);
x++;
}
}
printf("不及格人数:%d\n",x);
printf("----------------------------------------------------\n");
for(i=0;i<n;++i)
{
stu[i].sum=0;
stu[i].sum+=stu[i].grade;
stu[i].ave+=stu[i].sum/n;
}
printf("高于均分名单:\n学号\t成绩\t\n");
for(i=0;i<n;++i)
{
if(stu[i].grade>=stu[i].ave)
{
++y;
printf("%d",stu[i].num);
printf("%.2lf",stu[i].grade);
}
}
printf("高于均分人数:%d\n",y);
system("pause");
return 0;
}