1. 程式人生 > >YTUOJ——復仇者聯盟之陣列成績統計

YTUOJ——復仇者聯盟之陣列成績統計

題目描述

定義一個5行3列的二維陣列,各行分別代表一名學生的高數、英語、C++成績。再定義一個有5個元素的一維陣列,用於儲存每名學生的平均成績。請輸入學生的各門課成績,輸出帶平均成績的成績單,以及所有學生平均成績的平均值。

輸入

15個整數,表示5名學生3科的成績

輸出

分5行顯示每名學生的成績及平均成績
再顯示所有學生平均成績的平均值(保留兩位小數)

樣例輸入

97 78 87
78 63 68
73 81 85
91 87 88
76 81 89

樣例輸出

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

答案

#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中
	for(i=0; i<5; i++){
		average[i] = 0;
		for(j=0; j<3; j++)
			average[i] += score[i][j];
		average[i] /= 3;
	}
	
	//輸出帶平均成績的成績單
	cout<<setiosflags(ios::fixed)<<setprecision(2);
	for(i=0; i<5; i++){
		for(j=0; j<3; j++)
			cout<<score[i][j]<<" ";
		cout<<average[i]<<'\n';
	}
	//計算平均成績的平均值並輸出
	cout<<(average[0]+average[1]+average[2]+average[3]+average[4])/5<<endl;

	return 0;
}