Java中使用for循环实现有效成绩的输入,如输入无效则给出提示并继续输入。
时间: 2024-10-12 09:13:59 浏览: 59
在Java中,你可以使用`for`循环结合`Scanner`类来实现这个功能。以下是一个简单的示例:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
double score;
for (int i = 0; ; i++) { // 使用无限循环,直到获取有效的分数
System.out.println("请输入成绩(0-100之间,输入非数字将提示重试):");
while (!scanner.hasNextDouble()) { // 检查输入是否为有效分数
String input = scanner.nextLine();
System.out.println("输入错误,请输入一个数字:");
}
score = scanner.nextDouble(); // 获取输入的分数
if (score >= 0 && score <= 100) { // 如果分数有效
break; // 结束循环
} else {
System.out.println("分数超出范围,请重新输入:");
}
}
scanner.close();
System.out.println("有效成绩已录入:" + score);
}
}
```
在这个代码中,我们首先创建一个`Scanner`对象用于从用户那里获取输入。然后在`for`循环中,我们持续提示用户输入,并检查输入是否为数字。如果不是,我们就清除输入历史并提示重新输入。如果输入的是有效分数,我们就跳出循环,如果不在范围内,则再次提示用户。
阅读全文