if语句if-else仅在java中执行else
所以我正在努力解决这个问题,似乎我无法理解,我对java一无所知,我需要帮助。。因此,我正在制作一个简单的程序,它将通过分数来确定你是否通过了该科目,而它似乎只决定了ELSE语句。。这是密码。。这对我真的很有帮助。。提前谢谢
String studID=" ",course=" ", name=" ", dept=" ", subj=" ";
double exam1=0, exam2=0, exam3=0, exam4=0;
double avg, pgrade;
String msg=" ";
studID =JOptionPane.showInputDialog("Please fill-out the following fields:"
+ "\nStudent ID: ");
name = JOptionPane.showInputDialog("Name: ");
dept = JOptionPane.showInputDialog("Department: ");
course = JOptionPane.showInputDialog("Course: ");
subj = JOptionPane.showInputDialog("Subject: ");
exam1 = Double.parseDouble(JOptionPane.showInputDialog("First Examination: "));
exam2 = Double.parseDouble(JOptionPane.showInputDialog("Second Examination: "));
exam3 = Double.parseDouble(JOptionPane.showInputDialog("Third Examination: "));
exam4 = Double.parseDouble(JOptionPane.showInputDialog("Final Examination: "));
avg = (exam1 + exam2 + exam3 + exam4)/4;
pgrade =(100 - avg + 10) / 10;
if (avg==100)
{
msg = "passed - Excellent!";
}else if (avg>100 && avg<89)
{
msg = "Passed - Very Good!";
}else if (avg>90 && avg<84)
{
msg = "Passed - Average";
}else if (avg>85 && avg<79)
{
msg = "Passed - Good";
}else if (avg>80 && avg<74)
{
msg = "Passed - Satisfactory";
}else if (avg>75 && avg<49)
{
msg = "Failed";
}else if (avg>50 && avg<0.00)
{
msg = "Dropped";
}else if (avg==0.00 && avg<0.00)
{
msg = "No such Grade";
}else
{
msg = "Out of Range or Invalid.";
}
JOptionPane.showMessageDialog(null, new JTextArea (
"|======Student Details=======|"
+ "\n|StudentID:\t" + studID +"\t |"
+ "\n|Name:\t" + name + "\t |"
+ "\n|Department:\t" +dept+ "\t |"
+ "\n|Course:\t"+course+"\t |"
+ "\n|Subject:\t"+subj + "\t |"
+ "\n|=======Grade Details======= |"
+ "\n|First Second Third Fourth |"
+ "\n|"+exam1+" "+exam2+" "+exam3+" "+exam4+"\t |"
+ "\n|Average:\t" +avg + "\t|"
+ "\n|Point Grade\t:" +pgrade+"\t|"
+ "\n|Remarks:"+msg+"\t|"
+ "\n|=============================|"));
}
}
# 1 楼答案
这个条件是错误的,因为要在一个范围内包含一个变量,您必须进行设置
# 2 楼答案
你的比较一开始就错了,所以试着按照我纠正的方法做一些事情,这不是最好的,这样你就可以改进它