标题:快考试了,自己写了个程序,走过路过的大神请指导一下,很急,谢谢!
取消只看楼主
转念一想
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2016-10-18
结帖率:71.43%
已结贴  问题点数:6 回复次数:0 
快考试了,自己写了个程序,走过路过的大神请指导一下,很急,谢谢!
有10个学生,输入学生信息,以及3门课成绩,把平均分最高的同学的信息输出,统计有两门或两门以上不及格的人数
#include<stdio.h>
#define N 2
struct score{
float math;
float english;
float chinese;
};
struct student{
int ID;
char name[20];
int age;
struct score lesson;
};
void input(struct student stu[],int n)
{
int i;
for(i=0;i<2;i++)
scanf("%d%s%d%f%f%f",&stu[i].ID,stu[i].name,&stu[i].age,&stu[i].lesson.math,&stu[i].lesson.english,&stu[i].lesson.chinese);

}
void highscore(struct student stu[],int n)
{
float aver[2],sum[2],max;
int i,j;
for(i=0;i<2;i++){
sum[i]=stu[i].lesson .math+stu[i].lesson .english+stu[i].lesson .chinese;
aver[i]=sum[i]/3;
}

for(i=0;i<2;i++){
printf("第%d位学生的平均分为:%f\n",i+1,aver[i]);
}
max=aver[0];
for(i=0;i<2;i++){
 if(aver[i]>max){
max=aver[i];
j=i;}
}
}
printf("平均分成绩最高的学生信息:\n");//有错,不知怎么改
printf("%d",stu[j].ID);
printf("%s",stu[j].name);
printf("%d",stu[j].age);
printf("%f",stu[j].lesson.math);
printf("%f",stu[j].lesson.english);
printf("%f",stu[j].lesson.chinese);
}
void search(struct student stu[],int n)
{
int i,j=0,sum=0;
for(i=0;i<2;i++){
if(stu[i].lesson.math<60)
sum++;
if(stu[i].lesson.english<60)
sum++;
if(stu[i].lesson.chinese<60)
sum++;
}
if(sum>=2)
j++;
printf("不合格的人数为%d",j);//运行结果有错
}
int main()
{
struct student stu[N];
printf("学号 姓名 年龄 3门课的成绩:\n");
input(stu,N);
highscore(stu,N);
search(stu,N);
return 0;
}

 

 

 
搜索更多相关主题的帖子: english include 统计 信息 
2016-12-24 15:57



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-472875-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.273376 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved