我遇到了以下问题:
编写一个 Java 程序,提示用户输入 10 个学生的姓名和他们的成绩,作为一个字符串,用“,”分隔。对于每个学生,打印出他的姓名和分类等级。**注意:使用 for 循环和 switch。**提示:A (90-100)、B (80-89)、C (70-79)、D (60-69)
Sample Run:
Student1: Sara Alhazmi,88
Output:
Sara Alhazmi : B
Student2: Nada Alamri,95
Output:
Nada Alamri : A
(**Repeated 10 times)
以下是我的解决方案:“纠正我的错误后”感谢您的帮助:)
import java.util.*;
public class students{
public static void main(String args[])
{ Scanner input = new Scanner (System.in);
int f = 10;
for (int i = 1; i <= f; i++)
{ System.out.println("Student" + i + ":");
String s = input.nextLine();//s=name student and
String name = s.substring(0, s.indexOf(","));//name student
String sgrade = s.substring(s.indexOf(",")+1);//grad student
double grade = Double.parseDouble(sgrade) / 10;// I can not use string with loop so I convert to double because I Divided
int ingrade = (int)Math.round(grade); // then I convert to integer
switch (ingrade) {
case 10:
System.out.println(name + ": A");
break;
case 9:
System.out.println(name + ": A");
break;
case 8:
System.out.println(name + ": B");
break;
case 7:
System.out.println(name + ": C");
break;
case 6:
System.out.println(name + ": D");
break;
}//end while loop
}//end for loop
}// end main
}// end class