循环结构:while循环;do-while循环;for循环

今天学习了循环语句的用法,知道了三种循环语句的应用场合和使用特点

循环结构

循环就是重复做某一件事情。在Java程序中,循环控制即在某一情况下,控制程序重复执行某一条或多。
条语句,直到遇到终止条件为止循环语句也称迭代语句,在Java语言中存在的while、for和do-while循环语句。

while循环

while是Java中最基本的循环语句,满足条件才执行循环体,如果不满足条件则不执行。所以有可能循环体一次都不执行。
语法格式: while (继续循环的条件) { 循环所执行的代码; }

public class Test3 {
    
    
 public static void main(String[] args) {
    
    
 int res = 0;// 累加器
 int k = 1;// 用于控制循环次数
 while (k <= 100) {
    
    
 res += k++;//这里等价于res=res+k;k++;
 }
 System.out.println("1+2+3+...+100=" + res);
 }
}

用while循环接收用户输入小明的成绩,如果用户输入不合法就反复输入,直到正确为止

public class Test3 {
    
    
 public static void main(String[] args) {
    
    
 Scanner sc = new Scanner(System.in);
 int score = -1;
 while (score < 0 || score > 100) {
    
    
 System.out.println("请输入小明成绩:");
 String ss = sc.nextLine();
try {
    
    
 score = Integer.parseInt(ss);
 if (score < 0 || score > 100) {
    
    
 System.out.println("要求成绩值应该0-100之间");
 }
 } catch (Exception e) {
    
    
 System.out.println("请输入合法的整数成绩值");
 }
 }
 System.out.println("小明的成绩为:" + score);
 }
}

do-while循环

for 循环主要用于按预定的次数执行语句或语句块
语法: for(语句1,一般用于初始化循环控制变量; 语句2,是循环继续执行的条件; 语句3,是每次循
环执行结束后必须执行的语句){ 循环体语句; }

样例:计算1+2+3+…+100=?

public class Test6 {
    
    
 public static void main(String[] args) {
    
    
 int res = 0;
 for (int k = 1; k <= 100; k++)
 res += k;
// System.out.println(k); 報錯:变量k是在表达式1上声明的,只能在for循环内部有
效
 System.out.println("1+2+3+...+100=" + res);
 }
  }

三种循环的选择

1、如果不能提前预知循环次数,则使用while或者do/while循环,而for循环一般用在可提前预知循环次数的场景下
2、while循环可以出现一次都不执行的情况,但是do/while循环无论如何循环体都会被执行一次
需求:输出九九乘法表

public class Test7 {
    
    
 public static void main(String[] args) {
    
    
 for(int i=1;i<=9;i++) {
    
    //控制行数
 for(int k=1;k<=i;k++) {
    
    //控制每行的列数
 System.out.print(k+"*"+i+"="+(i*k)+"\t");
 }
 System.out.println();
 }
 }
}

循环中使用的跳转语句

Java提供了三种跳转语句:break、continue以及return,用来强制转移程序执行的顺序
break
break语句除了与switch结合使用外,还用来强制中断当前的循环,不再执行循环体中break后面的语句
而退出循环。譬如在后续将学到从数据库里循环取出数据,用来验证用户的用户名是否正确。如果当用
户名符合某一条数据时,就需要用到break语句来结束当前的循环验证
continue
continue语句的功能是,在循环语句中,当碰到continue时,将不再执行循环体continue之后的语句,
而重新判断循环控制的条件,继续循环,直到循环条件的值为假时退出循环
例题: 100 ~ 50000之间有多少整数,其各位数字之和为5,分别是哪些数(例如整数1324的各位数字之和为 1+3+2+4 等于10(不为5)),并统计满足条件的整数有多少个

package problem;

public class testC {
    
    
public static void main(String[] args) {
    
    
	int a,b,c,d,e;
	int k = 0;
	for (int i = 100;i<=50000;i++){
    
    
		a = i/10000;
		b = (i-a*10000)/1000;
		c = (i-a*10000-b*1000)/100;
		d = (i-a*10000-b*1000-c*100)/10;
		e = (i-a*10000-b*1000-c*100-d*10);
		if (a+b+c+d+e == 5){
    
    
		System.out.println(i);
		k++;
		}
	}
	System.out.println("一共有"+k+"个数字符合条件");
}
}

猜你喜欢

转载自blog.csdn.net/Lecheng_/article/details/112152293