📄 al7_8.c
字号:
/*案例代码文件名:AL7_8.C*/
/*功能:计算个人与各科平均成绩及全班平均成绩,并在屏幕上显示出来。*/
#define M 5 /*定义符号常量 人数为5*/
#define N 4 /*定义符号常量 课程为4*/
#include "stdio.h"
main()
{int i,j;
void aver(float sco[M+1][N+1]);
static float score[M+1][N+1]={{78,85,83,65}, {88,91,89,93}, {72,65,54,75},
{86,88,75,60},{69,60,50,72}};
/*以上定义一个(M+1)*(N+1)的二维数组,并进行初始化, */
/*留下最后一列score[i][N]存放个人平均成绩, */
/*最后一行score[M][i]存放学科平均成绩, */
/*最后一个元素score[M][N]存放全班总平均 */
aver(score); /*调用函数,2维数组名作为实参*/
clrscr();
printf("学生编号 课程1 课程2 课程3 课程4 个人平均\n");
for(i=0;i<M;i++)
{printf("学生%d\t",i+1);
for(j=0;j<N+1;j++)
printf("%6.1f\t",score[i][j]);
printf("\n");
}
for(j=0;j<8*(N+2);j++) printf("-"); /*画一条短划线*/
printf("\n课程平均");
for(j=0;j<N+1;j++) printf("%6.1f\t",score[i][j]);
printf("\n");
getch();
}
void aver(float sco[][N+1]) /*定义函数,2维数组名作为形参*/
{int i,j;
for(i=0;i<M;i++)
{for(j=0;j<N;j++)
{sco[i][N] += sco[i][j];/*求第i个人的总成绩*/
sco[M][j] += sco[i][j]; /*求第j门课的总成绩*/
sco[M][N] += sco[i][j]; /*求全班总成绩*/
}
sco[i][N] /= N; /*求第i个人的平均成绩*/
}
for(j=0;j<N;j++) sco[M][j] /= M; /*求第j门课的平均成绩*/
sco[M][N]=sco[M][N]/M/N; /*求全班总平均成绩*/
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -