文章标题

流程结构: 循环结构

1.循环结构1

while(1️⃣是否进行循环判断条件){
2️⃣

循环体
}

循环的规则:
当判断条件成立时 执行循环体
当判断条件不成立时 结束循环
当循环条件恒成立时 会出现死循环
可以给死循环 写一个出口 来结束循环

执行 :1->2->1->2->1 判断条件不成立 停止循环

循环增量

1.初始化循环增量

2.寻找循环判断条件

3.写循环体

4.注意:循环体中 一定记住 循环增量要进行改变

// 打印 1-100
int number=0;
while(number<100)
{
    System.out.println(number);
           number++;
}
// 打印 1-10的和
    // 累加思想 可以利用这个思想解决一堆问题
    // 定义循环增量(求和 相当于计算循环变量的和)
int number=1int sum=0while(number<=10){
    sum=sum+number;
    number++;
}
System.out.println(sum)
    // 银行定期存款 5年及以上利率7.5% 否则利率 4.5%
        // 输入一个存款年限  本金为10000 计算本金加利息
        //累加思想
        // 本金=本金+利息
        System.out.println("请输入一个年份");
        Scanner scanner=new Scanner(System.in);
        int year=scanner.nextInt();
        double sum=10000;
        int num=0;
        if(year>5) {
            while(num<year) {
                sum=sum*1.075;//核心代码
                num++;
            }
            System.out.println(sum);

        }else {
            while(num<year) {
                sum=sum*1.045;
                num++;
            }
            System.out.println(sum);

2.循环结构2

do{
* 1️⃣
循环体
}while(2️⃣循环条件)

循环的规则
先执行一次循环体(无论条件成立都会执行一次循环体) 再去判断循环条件
如果成立 就执行循环体 反之不成立 结束循环

while 与 do-while循环的区别:

while 要先判断然后才能执行循环体

do while 无论如何都要先执行一次循环体 然后判断

变量作用域 (变量的使用范围)
变量的作用域 只在当前的一对大括号中可以使用
出了当前这对大括号 就会访问不到


//  从周一开始打印 并询问明天上班不 输入上班继续打印 反之 停止程序
    // 输入不上班 停止程序
int num=1;
        Scanner scanner=new Scanner(System.in);
        String work="";
        do {
            System.out.println("星期"+num);
            System.out.println("请问明天上班不?输入上班或者不上班");

             work =scanner.next();
            num++;

        }while(work.equals("上班")&& num<=7);
//while的 死循环 
//break 也可以跳出循环
// 打印5次 结束循环
int num=0;
while(true)
{
    num++
    if(num>5)
    {
        break;
    }
    System.out.println("hh");


}

3.循环结构3(重点)

for(1️表达式1;2判断条件;3️表达式2)
{

4

循环体
}

执行顺序
1->2->4->3->2->4->3
初始化循环增量 只走一次

// 计数器思想
// 使用for循环 1-100中 是7的倍数 的个数
// 1.输出1-100的数
// 2.判断7的倍数 %7==0
// 3.记录一下有多少数符合要求
// 定义一个变量 记录个数
int count=9;
for(int i=1;i<=100;i++)
{
    if(i%7==0)
    {
        count++;//记录符合要求的数
    }
}
System.out.println(count);

for循环的嵌套

/* 打印下面图形 使用for循环
         * ****
         * ****
         * ****
         * ****
         * 
         * 
         * 外层循环控制:控制行数
         * 内层循环控制:控制 每一行 与几个元素
         * 
         * 执行顺序
         * 1->2
         * ->4->5->7->6->5->7->6->5(不成立时 结束内循环)
         * ->8->3->2
         * ->4->5->7->6->5->7->6->5
         * ->8->3->2
         * .....
         *
         */
        // 思考:双层for 循环的执行顺序
        //执行顺序

    //        1️⃣️⃣       2️⃣   3️⃣
        for(int i=0 ; i<4 ; i++) {
    //            4️⃣        5️⃣    6️⃣
            for (int j = 0; j <3; j++) {
            //      7️⃣
                System.out.print("*");

            }
               // 8️⃣
            System.out.println("*");
        }
/*
         * *****
         * ****
         * ***
         * **
         * *
         * 尖朝下的 三角形 改变 内循环
         */

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

            for(int j=i;j<5;j++)
            {
                System.out.print("*");
            }
            System.out.println();

        }
        /*
         * *
         * **
         * ***
         * ****
         * *****
         * 尖朝上的 三角形 改变 内循环
         */
      for(int i=0;i<5;i++)
      {
          for(int j=0;j<i+1;j++)
          {
              System.out.print("*")
          }
          System.out.prinln();
      }
/*
         * 1
         * 12
         * 123
         * 1234
         * 12345
         *
         */
         for(int i=0;i<5;i++)
         {
             for(int j=0;j<i+1;j++)
             {
                 System.out.print(j+1);
             }
         }
/*
         * 打印99乘法表
         */
         for(int i=1;i<=9;i++){
             for(int j=1;j<=i;j++)
             {
                 System.out.print(j+"*"+i+"="+j*i+"\t");
             }
             System.out.println();
         }
        //-----* 
//        ——--* * 
//        —--* * * 
//        —-* * * * 
//        -* * * * * 
                for(int i=0;i<5;i++)
                {
                    for(j=i;j<5;i++)
                    {
                        System.out.print("-");
                    }
                    for(j=0;j<i+1;j++)
                    {
                        System.out.print("*");
                    }
                    System.out.println();
                }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值