使用 Scanner 对象获取一组等差整数(键盘输入的数之间用空格分隔,最后一个为 %,不计入计算),统计出等差数列的均值(保留两位小数)。
这道题的难点就是如何判断是否输入%,还有就是如何保留两位小数。
import java.util.Scanner; public class WhileTest { public static void main(String[] args) { // TODO Auto-generated method stub // 定义变量sum,用于求等差数列的和 int sum=0; // 定义变量z,记录等差数个数 int z=0; // 创建Scanner对象 Scanner input = new Scanner(System.in); // 请在 Begin-End 间编写代码; /********** Begin **********/ // 第一步:使用while循环接收Scanner对象接收的值,当下一个值等于%时,终止循环 while(!input.hasNext("%")) {//可以用hasNext来判断是否输入的是“%” int a; a=input.nextInt(); sum += (int)a; z++; } double b=(double)sum/z; System.out.println(String.format("%.2f",b));//通过String.format来规范小数个数 /********** End **********/ } }