[英]how would I use a 2d array to print the quarter and total
編寫一個程序,顯示 4 節比賽中 8 名球員的得分。 程序應該顯示玩家的名字和姓氏,姓氏的首字母和首字母大寫。 分數由用戶輸入,但條目只能包含兩位數。 該程序應合計每個玩家的游戲得分。 output 應該顯示整個多維數組
導入 java.util.Scanner; 導入 java.util.Arrays;
公共 class finalScore {
public static void main(String[] args) {
Scanner scan = new Scanner (System.in);
System.out.print("Enter the number of game players: ");
// using array
int numOfPlayers = scan.nextInt();
String[] names = new String[numOfPlayers];
double[] scores = new double[numOfPlayers];
// using for loop to all the names of the player
String list="";
for (int i=0; i<names.length; i++){
list += " Quarter " + (i+1) + ": " + scores[i] + " points |||";
}
//return;
// asking user to enter players name
System.out.print("Enter a players name for quarter 1, " );
String name;
name= scan.next();
// UpperCasing the first letter of the first name
String result = name.substring(0, 1).toUpperCase()+name.substring(1);
String lastName=scan.next();
// UpperCasing last name
String result2=lastName.substring(0, 1).toUpperCase()+lastName.substring(1);
System.out.println(result + " " +result2);
// print name for scores
names[i] = name;
// enter name score
System.out.print("Enter " + result + " "+ result2 +"\'s score: ");
System.out.println("\n");
//System.out.println( "Name: \t" + "Q1. ");
while(scan.hasNext()) {
if(scan.hasNextDouble()) {
double score = scan.nextDouble();
scores[numOfPlayers] = score;
break;
} else {
System.out.println( "Name: \t" + "Q1. ");
System.out.println("ERROR: Invalid Input");
scan.next();
}
}
}
//System.out.println(" \tQ1. " );
//System.out.println( Arrays.toString(names ) + "\t" +Arrays.toString(scores));
//
}
這就是 output 應該是什么樣子,我不知道我是新手,請幫我解決 Q1。 Q2。 第三季度第四季度。 總鮑勃·史密斯。 1 2 3 4 10 異形之心 1 2 3 4 10
試試這個怎么樣? 您可以自己添加一些驗證。
public class finalScore {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.print("Enter the number of game players: ");
int numOfPlayers = scan.nextInt();
String[] names = new String[numOfPlayers];
double[][] scores = new double[numOfPlayers][4];
for (int i = 1; i < names.length + 1; i++) {
System.out.println("Enter a players name for quarter " + i + ": ");
String name = scan.next();
String result = name.substring(0, 1).toUpperCase() + name.substring(1);
String lastName = scan.next();
String result2 = lastName.substring(0, 1).toUpperCase() + lastName.substring(1);
System.out.println(result + " " + result2);
name = result + " " + result2;
names[i - 1] = name;
// enter scores
System.out.println("Enter " + names[i - 1] + "\'s score: ");
System.out.print("Q1: ");
scores[i-1][0] = scan.nextInt();
System.out.print("Q2: ");
scores[i-1][1] = scan.nextInt();
System.out.print("Q3: ");
scores[i-1][2] = scan.nextInt();
System.out.print("Q4: ");
scores[i-1][3] = scan.nextInt();
/*
System.out.print( "Name: " + name + "\t");
System.out.print( "Q1: " + scores[i-1][0] + "\t");
System.out.print( "Q2: " + scores[i-1][1] + "\t");
System.out.print( "Q3: " + scores[i-1][2] + "\t");
System.out.print( "Q4: " + scores[i-1][3] + "\t");
System.out.println();
*/
}
System.out.format("%15s%15s%15s%15s%15s%15s%n", new String[] {"Name", "Q1", "Q2", "Q3", "Q4", "Total"});
for (int i = 0; i < names.length; i++) {
double total = scores[i][0] + scores[i][1] + scores[i][2] + scores[i][3];
System.out.format("%15s%15s%15s%15s%15s%15s%n", new String[] {names[i],
String.valueOf(scores[i][0]),
String.valueOf(scores[i][1]),
String.valueOf(scores[i][2]),
String.valueOf(scores[i][3]),
String.valueOf(total)
});
}
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.