【5】Java流程控制之循环结构

一、流程控制概述

三大流程控制语句:顺序、选择、循环
1)顺序:从上往下依次执行
2)选择:if ,if-else,多重 if结构,嵌套if,switch,根据条件执行对应的内容
3)循环结构:
-while循环
-do-while循环
-for循环
-break语句
-continue语句

二、while循环

1)如果循环体只有一条语句,大括号可以省略 2)为避免死循环,小括号后面不要加分号 ,否则只执行分号前面的内容 3)n必须先进行初始化:例如 int n=1 4)循环变量n的值必须被改变:例如n++ 5)不满足条件(while后的条件)终止执行
 
2)语法格式:
while(循环条件[true]或[false])
{ 
语句; 
}

3)执行流程:

int n=1;
while(n<5){
System.out.println(n);
n++;
}

4)案例:求一到五的累加和

public class mooctest {
    public static void main(String[] args) {
        //求一到五的累加和
        //1+2+3+4+5
        int n=1;
        int sum=0;//sum存放和的变量
        while(n<=5) {
            sum=sum+n;
            n++;
        }
        System.out.println("1到5的累加和"+sum);
    }
}
//1到5的累加和15
View Code

5)案例:痪输出26个英文字母,分两行输出

public class mooctest {
    public static void main(String[] args) {
        // 循环输出26个英文小写字母,分两行输出
        char ch = 'a';
        int count = 1;// 控制换行
        while (ch <= 'z'){ //小括号后面不能有;分号,会死循环
            System.out.println(ch + " ");
            if (count % 13 == 0)//换行操作:第13个字符输完后,写一个换行符
                System.out.println();//println是换行,print不换行
            count++;
            ch++;
        }
    }
}
View Code

三、do-while循环

1)语法格式:
do {
语句;
}while(循环条件);

2)注意事项:

  ①do-while循环至少执行一次,因为循环条件在后面
  ②循环条件后的分号不能丢
 
3)执行流程:

int n = 1;
do
{
//输出n的值
    n++;
}while(n<5);
4)案例:求1-5的累加和
public class mooctest {
    public static void main(String[] args) {
    //求1-5的累加和
        int n=1;
        int sum=0;
        do {
            sum+=n;
            n++;
        }while(n<=5);
        System.out.println("sum="+sum);
    }
}
View Code

 5)案例:猜数字

import java.util.Scanner;
public class mooctest {
    public static void main(String[] args) {
    //设置要猜的数
        int num=(int)(Math.random()*100+1);//随机生成1到100之间的随机数
        int guess;
        System.out.println("猜一个介于1到100之间的数");
        do {
            System.out.println("请输入您猜的数:");
            Scanner sc=new Scanner(System.in);
            guess=sc.nextInt();
            if(guess>num) {
                System.out.println("太大");

            }else if(guess<num){
                System.out.println("太小");
            }
        }while(num!=guess);
        System.out.println("您猜中了!答案为"+num);
    }
}
//(Math.random(),表示[0.1),也就是包括0,不包括1之间的随机数
//Math.random()*100,表示[0,100)
//Math.random()*100+1,表示[1,101),也就是1到100之间的数
//1到5的累加和15
View Code
猜一个介于1到100之间的数
请输入您猜的数:
90
太大
请输入您猜的数:
50
太小
请输入您猜的数:
56
您猜中了!答案为56

四、for循环 

ps:主方法里的变量叫做局部变量。在for循环中定义的变量,出了循环就不能用了
1)语法

for(表达式1;表达式2;表达式3)
{
语句;
}
//表达式1(对循环条件初始化,只执行一次,第一执行 )
//表达式2(循环条件,第二执行)
//表达式3(循环条件进行改变,爱在执行循环体之后,最后执行)
2)语法格式

public static void main(String[] args) {
    int sum=0;
    for(int n=1;n<=5;n++) { //这里的n就是局部变量
       sum=sum+n;
   }
   System.out.println(sum);
}
3)for循环的注意事项
 
- 表达式1的初始化工作可以挪到循环体外 - 表达式2删掉后,则默认循环条件一直成立 (一直循环)可以在循环体 里面加 if break条件 - 表达式3的工作可以挪到循环体内

4)案例:将十以下的整数打印输出
public class mooctest {
    public static void main(String[] args) {
        //将十以下的整数打印输出
        int i=1;
        //for(;;) 什么都不输入,三个;相当于下面的语句
        while (true){
            System.out.println(i+" ");
            if(i==10)break;
            i++;
        }
    }
}
View Code

5)案例:随意输入数字,当输入0时程序停止
import java.util.Scanner;
public class mooctest {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        int n;
        while(true) {
            System.out.print("请从键盘输入数据:");
            n=sc.nextInt();
            if(n==0)break;
            System.out.println(n);
        }
    }
}
View Code
 
 
 
 
 
 
 
 

猜你喜欢

转载自www.cnblogs.com/haifeima/p/12603948.html
今日推荐