我试图编写代码,要求我插入我的年龄。如果它低于10,我希望它再问我3次。如果它高于10,它会说" welcome"。我无法做到这一点。
package newProject;
import java.util.Scanner;
public class mainclass {
public static void main(String[] args) {
System.out.println("Enter your age");
Scanner age= new Scanner(System.in);
int userage= age.nextInt();
if(userage<10){
for(int x = 3;x<3;x++){
System.out.println(userage+ "is too young");
System.out.println("Enter your age");
int userage1= age.nextInt();
}
}else{
System.out.println("welcome");
}
}
}
答案 0 :(得分:2)
无论你的程序是什么意思,你的错误都是你在x变量中设置的值。您必须将迭代3次的值设置为0。
System.out.println("Enter your age");
Scanner age= new Scanner(System.in);
int userage= age.nextInt();
if(userage<10) {
// You have to set x to 0 not 3
for(int x = 0;x<3;x++){
System.out.println(userage + "is too young");
System.out.println("Enter your age");
int userage1= age.nextInt();}
}
else{
System.out.println("welcome");
}
答案 1 :(得分:0)
问题在于:
for(int x = 3;x<3;x++)
只要for
小于3,您就设置x
循环运行,但您已声明x
等于3.因此,条件{永远不会遇到{1}},因此永远不会运行循环。这是你应该做的事情:
x<3
顺便说一下,请使用适当的缩进来格式化代码。没有缩进就很难阅读。
答案 2 :(得分:0)
package newProject;
import java.util.Scanner;
public class mainclass {
public static void main(String[] args) {
System.out.println("Enter your age");
Scanner age= new Scanner(System.in);
int userage= age.nextInt();
if(userage<10){
for(int i = 0;i<3;i++){
System.out.println(userage+ "is too young");
System.out.println("Enter your age");
int userage1= age.nextInt();
}
}
else{
System.out.println("welcome");
}
}
}