06 流程控制_02_循环结构

   循环结构

    主要有三种基本循环结构语句:for循环   while循环   do-while循环  

   循环结构通常包含四个部分:1.初始化部分(声明或者定义一个需要循环的变量,通常使用int类型的整数)
                                          2.循环条件部分(循环结束的条件表达式 布尔类型值ture /false   )
                                          3.循环体部分(当条件满足时,程序需要加载的代码)
                                          4.迭代部分(循环变量的变化情况)-->往上递增/往下递减

  

      for循环

     语法结构:for(1初始化语句;2循环条件表达式;4迭代语句){
                                3循环体语句代码
                                .
                                .
                                .
                                ...
                            }

      执行的过程:
                            1-->2-->3-->4-->2-->3-->4-->2-->3-->4.......直到程序结束

         

     注意: 1.说明:当循环条件表达式的结果值为false,那么该循环语句结构就结束了
                                此时程序就跳出该循环结构,往下执行后面的代码。
                             2.循环条件表达式需要关联前面的初始化声名的变量。
                             3.每次执行到循环条件表达式时,都会重新判断该表达式的真假,
                                当该表达时为真的时候,执行循环语句结构中循环体代码
                                当该表达式为假的时候,该循环语句结束,程序跳出该循环结构
                             4.查看该循环语句结构的循环次数(关键信息)。

      

 eg:要求在程序中输出10行文本信息“我很棒,我很优秀,我是最棒的!”

                for(int i = 0 ; i < 10; i++){  // index-->索引()  此处i++可以换为i=i+1;
                        System.out.println("我很棒,我很优秀,我是最棒的");
                }

          
执行过程:
int i = 0;-->i<10;-->System.out.println("我很棒,我很优秀,我是最棒的");
--> i++; 此时i = 1 --> i < 10;-->System.out.println("我很棒,我很优秀,我是最棒的");
--> i++; 此时i = 2 --> i < 10;-->System.out.println("我很棒,我很优秀,我是最棒的");
--> i++; 此时i = 3 .......
--> i++; 此时i = 10 --> i > 10;此时该表达式结果为false 循环结构结束。
循环次数:0--> = 10次

(累加)eg:正整数累加 = 1 + 2 + 3 + 4 + 5 + 6 +....+100
      int sum = 0;// sun 累加和
      for(int i = 1; i <= 100; i++){
   sum = sum + i ;//累加之后赋给sum变量
}
      
      System.out.println("输出前100个正整数的和为:" + sum);


 

 

 

    跳出语句:break   continue
                        break:
                                中断,打断,停止,那就是让当前正在执行的循环语句结构(单层)停止,程序跳出该循环语句结构
                        continue:
                                继续,那就是执行到该跳出语句时,程序发生跳跃,但是没有跳出该循环语句结构,吐过该循环语句中的
                                循环条件成立,那么程序会再次进入到该循环语句结构中,执行该循环语句结构中的循环体内容。

         这两个都写在循环体部分下方

 

 

    while循环

    语法格式:

                    1.初始化部分
                    while(2.布尔类型的表达式){
                            3.循环体的代码
                            4.迭代部分
                    }

 

     执行过程:
                    

      1-->2-->3-->4-->2-->3-->4-->2-->3.......-->2循环结束,程序跳出

    

eg: 1+2-3+4-5+6-7...+100,他的值是多少?
        int sum = 0;
        int i = 2 ;// 初始化部分
        while (i <= 100){//循环条件部分
            //奇偶数判定  3.循环体部分
            if( i % 2 == 0){
                sum =sum +i;
            }else{
                sum = sum-i;
            }

        i++;// 4.迭代部分   循环变量的变化情况
    }

        System.out.println(sum+1);

  

 

 

  do-while循环

  语法结构:
                1.初始化部分
                    do{

                        3.循环体部分

                        4.迭代部分
                    }while(2.循环条件);

  与while循环的区别:  do-while循环体结构中的循环体代码会先执行一次,然后再判断循环条件是否成立
                     如果循环条件成立,那么程序会再次进入while循环结构中,执行循环体代码
                     如果循环条件不成立,那么循环结构语句结束,程序跳出该循环结构。

  执行过程:
                  1-->3-->4-->2-->3-->4-->2-->3-->4-->2-->3......-->2循环结束

eg:求一下前100项能被3整除或者能被5整除或者能被7整除的但是不能被2整除的数的和。
        //思路:do-while
        int i = 1;
        int sum = 0;
        do {
            if( i % 2 != 0 && (i % 3 == 0 || i % 5 == 0 || i % 7 == 0) ){
                sum = sum + i;
            }

            i++;
        }while(i <= 100 );
        //输出该规则下的前100项的和
        System.out.println("该100项的和为" + sum);// 2328

 

posted @ 2020-10-15 21:04  wajueji  阅读(199)  评论(0编辑  收藏  举报