【发布时间】:2023-03-29 10:59:01
【问题描述】:
我是初学者。如果有人用 Java 以简单的方式解决我的问题,我将不胜感激。
问题: 求一个序列中所有元素的和,以数字 0 结尾。 数字 0 本身不包含在序列中,并用作停止的标志。 样本输入: 3 6 8 0 和 样本输出: 17
我正在编写以下程序:
import java.util.Scanner;
class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int sum = 0;
do {
sum += scanner.nextInt();
} while (scanner.nextInt() != 0);
System.out.println(sum);
}
我得到的如下:
输入: 3 6 8 0
输出:
11
【问题讨论】:
-
你调用了两次 nextInt (每个读取一个 int)所以实际上你使用 1 over 2
-
构造
int i; while ((i = scanner.nextInt()) != 0) {}会更适合手头的任务。 -
谢谢。现在我明白了。 @azro
标签: java