2.2用二維陣列實現,5個學生4門課程的總分和平均分的統計工作
阿新 • • 發佈:2019-01-31
摩爾的Java學習筆記2.2
第二週作業:
1、實現將一組整數進行升序排列;
2、用二維陣列實現,5個學生4門課程的總分和平均分的統計工作;
3、列印八行八列楊輝三角,開頭不列印空格;
4、模擬打牌遊戲中的發牌過程。用1~52來代表52張牌,玩家有四人,要求將發牌結果存入一個二維陣列(4行13列),最後顯示發牌結果,不許重複;
5、輸入多個字串,存入陣列,然後按照字串的大小重新升序排列;
6、使用二維陣列儲存學生的資料,包括學號、姓名、作業系統成績、Java成績、高數成績、總分;一行儲存一個學生的資料;要求輸入若干學生的資料,求出總分;然後按照總分由高到低重新排列;輸出排序後的結果。
2、用二維陣列實現,5個學生4門課程的總分和平均分的統計工作;
/**
* @author 薛蓮婷
* 用二維陣列實現,5個學生4門課程的總分和平均分的統計工作
* (方法一:輸入各門成績;方法二:各門成績已存在)
*
*此頁為方法一
*/
//供複製用以輸入的成績:2 2 2 2 2
import java.util.*;
class Assignment10 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int M=5 ; //5位同學
int N=4; //4門課程
float [][]score=new float [M][N+2]; //各位同學的分數、總分、個人平均分
float []average=new float [N]; //各門課程平均分
System.out.println("請輸入5名學生的4科成績:" ); //讀入成績
for(int i=0;i<M;i++)
{
System.out.print("第"+(i+1)+"位學生:");
for(int j=0;j<N;j++)
{
score[i][j]=sc.nextFloat(); //第i位的第j門課程成績
score[i][N]+=score[i][j]; //第i位的個人總分
score[i][N+1]+=(1/N)*score[i][j]; //第i位的個人平均分
average[j]+=(1/M)*score[i][j]; //第j門的課程平均分
}
sc.nextLine();
}
//列印成績統計表
System.out.println("成績統計:\t課程一\t課程二\t課程三\t課程四\t總分\t個人平均分");
for(int i=0;i<M;i++)
{
System.out.print("第"+(i+1)+"位學生"); //列印各位同學的分數、總分、個人平均分
for(int j=0;j<N+2;j++)
{
System.out.print("\t"+score[i][j]);
}
System.out.print("\n");
}
System.out.print("課程平均分:"); //列印各門課程平均分
for(int j=0;j<N;j++)
{
System.out.print("\t"+average[j]);
}
sc.close();
}
}
/**
* @author 薛蓮婷
* 用二維陣列實現,5個學生4門課程的總分和平均分的統計工作
* (方法一:輸入各門成績;方法二:各門成績已存在)
*
*此頁為方法二
*/
class Assignment11 {
public static void main(String[] args) {
int M=5; //5位同學
int N=4; //4門課程
float [][]score={{95,90,98,94},{92,96,94,90},{95,96,97,98},{93,96,97,93},{94,96,97,98}};
System.out.println("成績統計:\t課程一\t課程二\t課程三\t課程四\t總分\t\t平均分");
for(int i=0;i<M;i++)
{
float sum=0; //每位同學的總分
System.out.print("第"+(i+1)+"位同學:\t");
for(int j=0;j<N;j++)
{
System.out.print(score[i][j]+"\t");
sum+=score[i][j];
}
System.out.println("總分:"+sum+"\t平均分:"+sum/N+""); //列印學生成績、總分、平均分
}
System.out.print("課程平均分:"); //列印每門課程平均分
for(int j=0;j<N;j++)
{
float lessonAverage=0; //課程平均分
for(int i=0;i<M;i++)
{
lessonAverage+=score[i][j];
}
System.out.print("\t"+lessonAverage/M);
}
}
}