使用if-else语句进行java分级
import java.util.Scanner;
public class grade {
public static void main(String args[]) {
Scanner input = new Scanner(System.in);
double no;
System.out.print("Please enter your CPA: ");
no = input.nextDouble();
if (2.00<=no)//2.00<=CPA<= 2.49
System.out.println("forth class");
else if (2.50<=no)//2.50<=CPA<=2.99
System.out.println("third class");
else if (3.00<=no)//3.00<=CPA<=3.74
System.out.println("second class");
else if (3.74<=no)//(no>=3.75)
System.out.println("first class");
else
System.out.println("You did not follow the order.");
} }
例如,如果我输入3.5年级,它将打印第四节课,如果我输入4.00,它也将打印第四节课。为什么它没有打印出确切的答案
# 1 楼答案
因为3.5和4都大于2,所以你可以在这里给我们一个切换语句
# 2 楼答案
这是一个简单的
if-else
语句问题。您忘记在语句中设置边界(范围值)# 3 楼答案
您正在获得预期的输出,因为您当前只检查它是否超过某个数字,请尝试交换顺序,并在每个语句中添加类似的内容:
# 4 楼答案
对于3.5和4.0,第一个条件
if (2.00<=no)
的计算结果均为true。跳过所有其他子句,这就是if语句的工作原理:-)# 5 楼答案
应该的。因为
forth class
通过以下方式给出现在你可以看到你的逻辑不正确了。任何大于
2.00
的值都将满足这一要求只要改变你的逻辑顺序
# 6 楼答案
你只需要添加&&;(和)在你的情况下就像