概述
任务描述
本关任务:给定一个大于 1 的正整数 n,求所有小于 n 的自然数的平均值(保留两位小数)。 自然数的定义:大于等于 0 的整数。
相关知识
当我们想要对同样的操作执行多次,就需要使用到循环结构,在 Java 中循环结构主要分为三种:
- while 循环;
- do...while 循环;
- for 循环。
之前我们已经学习了 while 循环,今天我们来学习跟 while 循环相似的另一种循环结构 —— do...while 循环。
do...while 循环
首先我们来了解一下 do...while 循环的逻辑:
图1
如上图1所示,do...while 循环首先会执行一遍循环体语句,然后再判断 while 后面的条件是否成立,成立的话继续执行循环体语句,不成立的话退出循环,它的语法格式如下所示:
do {
循环体语句序列;
} while(循环条件表达式);
do...while 循环与 while 循环的区别就在于 do...while 循环是先执行循环语句,后判断,而 while 循环是先判断,后执行循环语句,也就是说 do...while 循环会保证循环体语句最少被执行一遍。
do...while 循环使用案例:循环打印”好好学习,天天向上“ n 次。
public class DWhileTest {
public static void main(String[] args) {
// 定义整数变量i,并赋初值0
int i=0;
// 创建Scanner对象
Scanner input = new Scanner(System.in);
// 获取输入的整数值
int n = input.nextInt();
// 在do后的花括号中编写循环语句
do{
System.out.print("好好学习,天天向上");
i++;
}
// 在while后判断条件
while(i<n);
}
}
当 n=5 时,控制台输出结果:
好好学习,天天向上
好好学习,天天向上
好好学习,天天向上
好好学习,天天向上
好好学习,天天向上
编程要求
仔细阅读右侧编辑区内给出的代码框架及注释,按照提示编写程序代码。
/*
任务:通过Scanner对象获取输入值n,求所有小于n的自然数的平均值。
输出的平均值请转化为double类型。
*/
import java.util.Scanner;
public class DWhileTest {
public static void main(String[] args) {
// 定义变量n,接收输入值
int n;
// 定义求和变量sum,并赋初值0
int sum=0;
// 定义变量i,并赋初值0
int i=0;
//创建Scanner对象
Scanner input = new Scanner(System.in);
// 请在Begin-End间编写代码
/********** Begin **********/
// 获取输入值n
n = input.nextInt();
do{
sum+=i;
i++;
}
// 在while后判断条件,当i小于n时退出循环
while(i<n);
double avg = (double)sum / n;
// 输出平均值,保留两位小数
System.out.printf("%.2f",avg);
/********** End **********/
}
}
最后
以上就是超帅香氛为你收集整理的学习-Java循环do…while之前n个自然数平均值的全部内容,希望文章能够帮你解决学习-Java循环do…while之前n个自然数平均值所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复