看了答案,发现做的好粗糙
程序代码:#include<stdio.h>
void average(float(*p)[6])
{
int i, j;
float sum = 0, aver;
for (j = 1; j < 6; j++)
{
for (i = 0; i < 4; i++)
sum = sum + *(*(p + i) + j);
aver = sum / 4; break;
}
printf("第一门课的平均分是\naver=%5.2f\n", aver);
}
void search(float(*p)[6])
{
int i, j, k;
float sum, aver;
for (i = 0; i < 4; i++)
{
k = 0;
sum = 0;
aver = 0;
for (j = 1; j < 6; j++)
if (*(*(p + i) + j) < 60.0)
k++;
if (k >= 2)
{
printf("两门以上不及格的学生的学号及全部成绩是:\n");
for (j = 0; j < 6; j++)
printf("%11.2f", *(*(p + i) + j));
printf("\n");
for (j = 1; j < 6; j++)
sum = sum + *(*(p + i) + j);
aver = sum / 5;
printf("该生的平均分是\naver=%5.2f\n", aver);
}
}
}
int main()
{
void average(float(*p)[6]);
void search(float(*p)[6]);
float a[4][6] = { {101,34,56,88,99,89},{102,27,88,99,67,78},{103,99,90,87,86,89},{104,78,89,99,56,77} };
average(a);
search(a);
return 0;
}










