【发布时间】:2015-10-07 18:52:03
【问题描述】:
我的导师希望我使用 switch 语句,但我正在计算一个学生的成绩,从本质上讲,我会考虑使用 double 但我不能。程序应要求用户输入,然后学生输入哪个数字(例如:92.99),根据教学大纲打印出字母等级。请帮忙! 此外,这不再正常工作。它不会打印出字母等级。 这是我目前所拥有的:
public class calculate {
private static String gradefinal;
private static char grade;
/**
* @param args
*/
public static void main(String[] args)
{
// TODO Auto-generated method stub
// variable declaration
Scanner in = new Scanner(System.in); //Input device scanner
double finalgrade = 0.0;
// input
String first_name; //Holds first name
System.out.print("Enter your first name: ");
first_name = in.next();
String last_name; //Holds last name
System.out.print("Enter your last name: ");
last_name = in.next();
String major; //Holds user's major
System.out.print("Enter your intended major: ");
major = in.next();
String ist; //Holds user's class number
System.out.print("Enter the IST class you are in: ");
ist = in.next();
String final_grade; //Holds user's letter grade
System.out.print("Enter your final grade: ");
final_grade = in.next();
// process
if (finalgrade <= 59.99)
{
grade = 'F';
}
else if (finalgrade >= 90.00)
{
grade = 'A';
}
else if ((finalgrade <= 89.99) && (finalgrade >= 79.99))
{
grade = 'B';
}
else if ((finalgrade <= 79.99) && (finalgrade >= 69.99))
{
grade = 'C';
}
else if ((finalgrade <= 69.99) && (finalgrade >= 60.00))
{
grade = 'D';
}
//output
System.out.printf("First Name: %s\nLast Name: %s\nIntended Major: %s\nIST Class: %s\nYour final grade is: %s\nfinal letter grade: %s",first_name, last_name, major, ist, final_grade, grade);
}
}
【问题讨论】:
-
此外,它不能正常工作。它不会打印出字母等级。
-
考虑通过下方的“编辑”链接为您自己的问题直接添加任何额外的 cmets。
-
可能是重复的,但不是肯定的。我确信其中的一些答案可能是您的解决方案:In Java,Using switch statement with a range of value in each case?
-
这可能会有所不同,因为我试图让我的程序打印出一个字母等级(字符串或字符),根据用户在系统中输入的数字等级(双倍)。跨度>
标签: java