Java循环案例实解

Java基础SE | Java循环案例实解:

1.为什么要使用循环?循环的要素?

 

     思考:输入输出10个学生的年龄

     int age1~10;

     10遍scanner();

     10遍System.out.print();

当程序出现大量重复相同的操作时

     循环的要素:

     1.重复做的事情-->大括号{ }

     2.重复的次数-->循环变量

2.whlie()循环

    while(表达式[循环条件]){

        执行语句;[重复操作的事情]

        循环变量的自增或自减;

        [使循环趋于结束]

    }

    表达式:循环条件,每次执行循环之前都会判断表达式的真假

一般是由关系运算符组成偶尔可见关系和逻辑运算符组成

   

     执行过程:当循环执行到while时,首先会判断while后面( )里的表达式值的真假,

     如果为真,那么就执行{ }里执行语句,然后循环变量自增或自减,

     继续判断表达式的真假,直到表达式值为假,那么while循环结束

【案例】

      0~10不包括

     //循环变量赋初值(循环开始的位置)

     int i = 0;  //1次

     while (i<10) {//循环条件 //11

     //重复操作的事情

     System.out.println(i);  // 10

     //循环变量的自增

        i++;  //10

     }

     while(true){

     //死循环

     }

【拓展案例1】

倒序输出0~10

    //循环变量赋初值

    int i = 10;

    while (i>0) {//循环条件

        //重复操作的事情

      System.out.println(i);

        //循环变量的自减

        i--;

    }

【拓展案例2】

打印100以内所有的奇数,偶数和3的倍数(不包括100)

    

    //循环变量赋初值

    int i = 1;

    while (i<100) {//循环条件

        if(i%2==1){

           System.out.println(“奇数:”+i);

        }

        if(i%2==0){

           System.out.println(“偶数:”+i);

        }

        if (i%3==0) {

           System.out.println(“3的倍数:”+i);

        }

        //循环变量的自增

        i++;

    }

【拓展案例3】

计算1-100之间所有整数之和。5050

    

     //循环变量赋初值

      int i = 1;

     //累加和

     int sum = 0;

    while (i<=100) {//循环条件

        sum+=i;//sum = sum + i;

        //循环变量自增

        i++;

    }

    System.out.println(“sum =”+sum);

【拓展案例4】    

计算5的阶乘

    //循环变量赋初值

    int  i = 1;

    //阶乘

    int num = 1;

    while (i<=5) {//循环条件

        num *= i;//num = num*i;

        //循环变量的自增

        i++;

    }

     System.out.println(“num=”+num);

3.do-while循环

     do{

         执行语句;[重复操作的事情]

循环变量的自增或自减

        }while(表达式[循环条件]);

     

     执行过程:当程序执行到do-while时,首先会执行do后面{ }里的执行语句,

     然后循环变量自增或自减,接着再去判断while后面( )里表达式的值,

     如果值为真,那么就继续执行do,如果值为假,那么就结束循环

    

【案例】

     //0~10

     //循环变量赋初值

     int i = 0;

     do{

     //重复操作的事情

    System.out.println(i);

     //循环变量自增

      i++;

     }while (i<10);

3.1、do-while和while区别

    do-while会先执行一次,然后再去判断表达式的真假

    while先判断表达式的真假,然后在去执行

  

【案例】

    打印0~10

    //循环变量赋初值

    int i = 0;

    do{

        //重复操作的事情

      System.out.println(i);

        //循环变量自增

        i++;

    }while (i<0);

    System.out.println(“\n———————————\n”);

    int j = 0;

    while (j<0) {

         System.out.println(j);

        j++;

    }

【拓展案例1】

逆序输出10~0

    //循环变量赋初值

    int i = 10;

    do {

        //重复做的事情

         System.out.println(j);

        //循环变量的自减

        i--;

    } while (i>0); //循环条件

【拓展案例2】

求1!+2!+3!和

public static void main(String[] args) {

  Scanner input = new Scanner(System.in);

//输入一个数

  int n = input.nextInt();

    //累加

    int sum = 0;

    //阶乘

    int num = 1;

    //循环变量赋初值

    int i = 1;

    do {

        //1!+2!+3!=1*1+1*2+1*2*3+1*2*3*4

        //先求出阶乘

        num = num * i;//2

        //求和

        sum = sum + num;//3

        //循环变量的自增

        i++;

    } while (i<=n);//循环条件

    //打印结果

    System.out.println("sum="+sum);

}

4.for()循环

     for(循环变量赋初值;循环条件;循环变量的自增或自减){

        执行语句;[重复操作的事情]

     }

     执行过程:当程序执行到for首先会执行循环变量赋初值,然后执行循环条件,

     判断循环条件的真假,然后为真,那么就执行{ }里的执行语句,

     并计算循环变量自增或自减,然后继续判断循环条件,直到为假,for循环结束

    

【案例】

     //int i;

     //循环变量赋初值 1次

     //循环条件:  11次

     //自增: 10次

     for (int i = 0; i<10; i++) {

      System.out.println("%d\n",i);

     }

4.1、for循环的6种写法

public static void main(String[] args) {

 Scanner input = new Scanner(System.in);

   //1.标准写法

    for(int i = 0;i<10;i++){

        System.out.println(i);

    }

    //2.表达式1可以省略,但是要在外部声明

    int i = 0;

    for(;i<10;i++){

     System.out.println(i);

    }

    //3.表达式2可以省略,但是是死循环

    for(int i = 0;;i++){

      System.out.println(i);

    }

    //4.表达式3可以省略,但是要声明在循环内部

    for(int i = 0;i<10;){

      System.out.println(i);

        i++;

    }

     //5.表达式1,3可以省略,但是要声明在循环的外部和内部

    int i = 0;

    for(;i<10;){

      System.out.println(i);

        i++;

    } //while

    //6.三个表达式都省略,死循环

    int i = 0;

    for(;;){

        System.out.println(i);

        i++;

    }

【拓展案例1】

打印Fibonacci数列的前20个数,并打印这20个数的总和。

//1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765

// Fibonacci特点:第1,2两个数值为1,从第三个数开始,该数是其前面两个数之和

    

    //已知第一位

    int n1 = 1;

    //已知第二位

    int n2 = 1;

    //假设第三位

    int n3 = 0;

    //求和初始值(前两位已知)

    int sum = 2;

    //循环(循环条件18次)

    for(int i = 0 ;i<18;i++){

    //求第三位

        n3 = n1+n2; //2

    //打印第三位值

        System.out.println(“sum=”+n3);;//2

    //求和

        sum = sum +n3;//4

    //后移

        n1 = n2; //n1 = 1

        n2 = n3; //n2 = 2

    }

    //打印结果

  System.out.println(“sum=”+sum);

【拓展案例2】

输入一个数,输出这个数的每一位

   Scanner input = new Scanner(System.in);

    int  n = input.nextint();

    for (;n!=0;) {

        System.out.println(i%10);

        n = n/10;

    }
 

 需要更多教程,微信扫码即可
       

         别忘了扫码领取资料哦
                 【高清Java学习线路图】和【全套学习视频及相关资料】

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值