复仇者联盟之数组成绩统计
Description
定义一个5行3列的二维数组,各行分别代表一名学生的高数、英语、C++成绩。再定义一个有5个元素的一维数组,用于存储每名学生的平均成绩。请输入学生的各门课成绩,输出带平均成绩的成绩单,以及所有学生平均成绩的平均值。
Input
15个整数,表示5名学生3科的成绩
Output
分5行显示每名学生的成绩及平均成绩
再显示所有学生平均成绩的平均值(保留两位小数)
Sample Input
97 78 87 78 63 68 73 81 85 91 87 88 76 81 89
Sample Output
97 78 87 87.33 78 63 68 69.67 73 81 85 79.67 91 87 88 88.67 76 81 89 82.00 81.47
HINT
可以在下面程序框架基础上完成,计算中需要的其他变量自行添加
#include<iostream>
#include <iomanip>
using namespace std;
int main()
{
int score[5][3]; //保存成绩的数组
double average[5]; //保存平均成绩的数组
int i,j;
//输入成绩
for(i=0; i<5; i++)
for(j=0; j<3; j++)
cin>>score[i][j];
//计算每位同学的平均成绩,保存到数组average中
//输出带平均成绩的成绩单
//计算平均成绩的平均值并输出
return 0;
}
解:
#include<iostream> #include <iomanip> using namespace std; int main() { double d; double score[5][3]; double average[5]; int i,j; for(i=0; i<5; i++) for(j=0; j<3; j++) cin>>score[i][j]; average[0]=(score[0][0]+score[0][1]+score[0][2])/3; average[1]=(score[1][0]+score[1][1]+score[1][2])/3; average[2]=(score[2][0]+score[2][1]+score[2][2])/3; average[3]=(score[3][0]+score[3][1]+score[3][2])/3; average[4]=(score[4][0]+score[4][1]+score[4][2])/3; d=(average[0]+average[1]+average[2]+average[3]+average[4])/5; for (i=0;i<=4;i++) { for (j=0;j<=2;j++) { cout<<setiosflags(ios::fixed)<<setprecision(0)<<score[i][j]; cout<<" "; } cout<<setiosflags(ios::fixed)<<setprecision(2)<<average[i]<<endl; } cout<<d; return 0; }
时间: 2024-10-31 20:46:17