Thirdly, #include<stdio.h>
#define M 4 #define N 5
struct stu { int no; float score[N]; }s[M];
void first_average( ) { int i; float average=0; for(i=0;i<M;i++) average+=s[i].score[0]; average/=M; printf("\n1. 第一门课的平均成绩为:%f\n",average); }
void pass( ) { int i,j,flag[M],cnt[M]; float average; printf("2. \n"); for(i=0;i<M;i++) { flag[i]=cnt[i]=0; for(j=0;j<N;j++) if(s[i].score[j]<60) cnt[i]++; if(cnt[i]>=2)/*这里两门以上课程不及格是指包括两门*/ flag[i]=1; if(flag[i]==1) { average=0; for(j=0;j<N;j++) average+=s[i].score[j]; average/=N; printf(" 学号%d: ",s[i].no); for(j=0;j<N;j++) printf("%.1f ",s[i].score[j]); printf("平均成绩:%.1f\n",average); } } }
void find( ) { printf("3. 你是不是耍我啊,什么平均成绩在90分以上,全部课程成绩85分以上,这样的统计有什么用处呢!"); }
void main( ) { int i,j; printf("请输入各个学生的学号和各科成绩:\n"); printf("注意: 本班有%d个学生,每个学生有%d门成绩\n",M,N); for(i=0;i<M;i++) { scanf("%d",&s[i].no); for(j=0;j<N;j++) scanf("%f",&s[i].score[j]); } first_average( ); pass( ); find( ); }
太极之道 qq:283421560 E-mail:zhangzujin360732@