求大神指导!!N个学生4门课。查找平均成绩在90分以上或全部课程在85分以上的学生

include<stdio.h>

define N 40

void Search2(float (p)[4],int n,int s[],int q,float *aver) {//查找平均成绩90分以上或全部课程在85分以上的学生 int i,j,k=0,count; for(i=0;i<n;i++) { count=0; for(j=0;j<4;j++) if(((p+i)+j)>=85) count++; if(count==4||(aver+i)>=90) s[k++]=i; } q=k;
return NULL; } void Output(float (
p)[4],int s[],int m) {//输出满足条件的学生的信息,其中m表示数组s的大小, //n表示所有学生 int i,j,k; for(k=0;k<m;k++) { i=s[k]; for(j=0;j<4;j++) printf("%7.0f",((p+i)+j)); printf("\n"); } } int main() { float score[N][4],*ps,aver[N]; int i,j,m,n,s1[N]={0},s2[N]={0}; //s数组统计成绩在85分以上学生数 printf("输入学生人数(不超过40):\n"); scanf("%d",&n); printf("输入每个学生四门课的成绩:\n"); for(i=0;i<n;i++) for(j=0;j<4;j++) scanf("%f",&score[i][j]);

 m=0;

 Search2(score,n,s2,&m,aver);
 printf("\n平均成绩在90分以上或全部课程在85以上的学生:\n");
 Output(score,s2,m);
 return 0;

}

关于学生成绩还有哪些考点? 如果有两门以上成绩不合格,输出他们的学号和全部成绩,用返回指针实现, 改怎么写代码


0个回答