java在循环外存储while循环的输入
所以我有一个问题,希望用户输入未知数量的数字,然后计算这些数字的总数和平均值。它希望我们使用一个while循环,根据用户说他们必须输入的数字来请求输入数字。我如何存储输入,然后用它来计算总数和平均数
这就是我所拥有的:
int numOfMarks, mark ;
Scanner kdb = new Scanner(System.in);
System.out.print("Enter number of marks: ");
numOfMarks = kbd.nextInt() ;
int i = 1 ;
while(i<=numOfMarks) {
System.out.print("Enter a mark: ") ;
mark = kbd.nextInt() ;
i=i+1 ;
}
但实际上,每次执行循环时,标记都会被覆盖。如何存储每个循环输入以供进一步使用
# 1 楼答案
对于总数和平均数,需要保留两个变量——一个用于总数,一个用于数字的数量。但是你已经有了-
numOfMarks
因此,请定义:
在循环中,将每个标记添加到总数中
最后,您可以打印:
我使用double的原因是平均值可能不是一个整数。如果希望平均值为四舍五入,可以使用long(大多数情况下甚至int)
# 2 楼答案
你可以将它们存储在一个数组中,但考虑到你所需要的只是总数和平均数,你可以继续增加每个循环的总数。最后,你会得到总数,然后就可以计算出平均数。像这样:
# 3 楼答案
不需要全部存储,最后有一个运行总数和平均值