#include//平均成绩 void Avg(double(*a)[6]) { int i; int j; for (i = 0; i <= 5; i++) { for (j = 0; j <= 5; j++) { *(*(a + i) + 5) = *(*(a + i) + 5) + *(*(a + i) + j); } a[i][5] = a[i][5] / 5; } } //课程的总分 void sum(double(*a)[6]) { int i, j; for (i = 0; i < 5; i++) { for (j = 0; j < 5; j++) { *(*(a + 5) + j) = *(*(a + 5) + j) + *(*(a + i) + j); } } } // void Max(double(*a)[6]) { for (int i = 0; i < 5; i++) { for (int j = 0; j < 5; j++) { if(* (*(a + 6) + j) < *(*(a + i) + j)){ *(*(a + 6) + j) = *(*(a + i) + j); *(*(a + 7) + j) = i + 1; } } } } void display(double(*a)[6]) { printf("学号t语文t数学t英语t物理t化学t平均分n"); int i, j; for (i = 0; i < 8; i++) { if (i < 5) { printf("No:%dt", i + 1); } else if (i == 5) { printf("总分t"); } else if (i == 6) { printf("最高分t"); } else if (i == 7) { printf("学号t"); } for (j = 0; j < 6; j++) { if (!(j == 5 && (i == 5 || i == 6 || i == 7))) { printf("%.2lft", *(*(a + i) + j)); } } printf("n"); } } int main() { double a[8][6] = { {78,82,93,74,65} ,{91,82,72,76,67} ,{100,90,85,72,98} ,{67,89,90,65,78} ,{77,88,99,45,89} }; Avg(a); sum(a); Max(a); display(a); return 0; }
运行之后结果就是这样了。



