Java输入,扫描程序和if语句

时间:2016-09-15 14:09:15

标签: java if-statement

我有这样的作业:

编写一个名为ExamResult的完整程序,其行为如下所示。 阅读学生内部考试成绩和期末考试成绩的用户输入。

内部考试成绩低于20会导致学生失败; 40岁以下的期末考试也会导致学生失败。

否则学生已经过去了。

学期考试成绩!

您的内部考试成绩是多少? 21

你的期末考试成绩是多少? 69

你已经过去了!

到目前为止,我已经发现使用if语句和扫描仪进行输入是合适的。 现在这是我的代码(我确实有类,导入java util和上面的主要方法。我选择不在这里包含它)

  System.out.println("Semester Examination Results!");

  System.out.println("What is your internal test score?");

  //input
  //calculate input
  //does input pass the if test?
  //output passed/failed

  int score1 = scanner.nextLine();
  int score2 = scanner.nextLine();

  if (int score1 < 20; || score2 < 40;)
  {
     System.out.println("You have failed");
  }
  else
  {
     System.out.println("You have passed");
  } 

我不确定如何使用输入进行计算?

2 个答案:

答案 0 :(得分:2)

使用scanner.nextInt()代替nextLine()。你也不需要if语句中的分号。

  

EDIT1

您无需在if语句中重新初始化score1和2。它看起来像这样

Scanner scanner = new Scanner(System.in);
//init and read in values here
if(score1 < 20 || score2 < 40){
   //do stuff
}
else{
    //do other stuff
}

答案 1 :(得分:1)

  • 从条件中删除;,因为这些不是任何陈述。同时删除int

    if (int score1 < 20; || score2 < 40;)
    

    应该是:

    if (score1 < 20 || score2 < 40)
    
  • 此外,使用nextInt()Integer.parseInt(scanner.nextLine())进行整数输入。