do while循环控制
(1)do while基本语法:
循环变量初始化;
do{
循环体(语句);
循环变量迭代;
}while(循环条件);
说明:
1.do while是关键字
2.也有循环四要素,只是位置不一样
3.先执行,再判断,也就是说,一定会至少执行一次
4.最后有一个分号 ;
5.循环条件是返回一个布尔值的表达式
(2)流程图:
(3)do while循环案例:
1)输出10句hello
int i=1;//循环变量初始化
do{
//循环执行语句
System.out.println("hello");
//循环变量迭代
i++;
}while(i<=10);
System.out.println("hello");
}
2)打印 1-100
代码实现:
public static void main(String[] args) {
// 打印 1-100
int i=1;
do{
System.out.println(i);
i++;
}
while(i<=100);
}
3)计算 1-100 的和
代码实现:
public static void main(String[] args) {
// 计算 1-100 的和
int i=1;
int sum=0;
do{
sum+=i;
i++;
}
while(i<=100);
System.out.println(sum);
}
4)统计 1-100 之间能被5整除但不能被3整除的 个数
思路分析:
①:使用do-while输出1-100
②:过滤能被5整除但不能被3整除的数 %
③:统计满足条件的个数 int count =0;
代码实现:
public static void main(String[] args) {
// 统计 1-100 之间能被5整除但不能被3整除的 个数
int i=1;
int count=0; //统计满足条件的个数
do{
if(i%5==0 && i%3!=0){
count++;
}
i++;
}
while(i<=100);
System.out.println(count);
}
4)如果李三不还钱,则老马一直使出五连鞭,直到李三说还钱为止
思路分析:
①:不停问还钱吗?
②:使用 char a接收,定义一个Scanner对象
③:在do-while 的while 判断如果是yes就不再循环
代码实现 :
public static void main(String[] args) {
// 如果李三不还钱,则老马一直使出五连鞭,直到李三说还钱为止
int i=1;
int count=0;
Scanner sc = new Scanner(System.in);
char a=' ';
do{
System.out.println("老马使出五连鞭");
System.out.println("老马问:还钱吗? y/n");
a = sc.next().charAt(0);
System.out.println("他的回答是"+a);
}
while(a != 'y'); //判断条件很关键
}
System.out.println("李三还钱了");