循环结构

几个问题

张三oracle考试成绩未达到自己的目标。为了表明自己勤奋学习的决心,他决定写一百遍“好好学习,天天向上!”

循环结构语法

循环结构就是反复的执行同一段代码,直到符合某个条件后退出,循环结构分为两种:while循环和for循环。


image.png

特点:先判断,再执行


image.png

一个练习

老师每天检查张三的学习任务是否合格,如果不合格,则继续进行。
老师给张三安排的每天的学习任务为:上午阅读教材,学习理论部分,下午上机编程,掌握代码部分。

  • 分析是否存在重复操作
  • 使用while循环实现
  1. 确定循环条件和循环操作
  2. 套用while语法写出代码
  3. 检查循环是否能够退出


    image.png
boolean b = true;//标志
        while(b){//当b为true时,一直循环
            System.out.println("合格了吗?(y/n):");
            Scanner sc = new Scanner(System.in);
            String res = sc.next();
            if(res.equals("n")){//相当于res=="n"
                System.out.println("不合格,继续学习");
            }else{
                System.out.println("合格");
                b = false;
            }
        }
    
    System.out.println("程序结束");
练习二

2012年培养学员10万人,每年增长20%,请问按此增长速度,到哪一年培训学员人数将达到100万人?

提示:循环条件和循环操作分别是什么?
2、2013年培训学员数量 = 100000 * (1 + 0.2 )
3、int year = 2012;
double students = 100000;
while …

public class whileDemo2 {
    public static void main(String[] args) {
//        2012年培养学员10万人,每年增长20%,
// 请问按此增长速度,到哪一年培训学员人数将达到100万人?

        int year = 2012;
        double personCount = 100000;
        while(personCount <= 1000000)
        {
            //增加年数
            year++;
            //增加人数(1.2)
            personCount = personCount*1.2;
            System.out.println(year+"年"+personCount+"人");
        }
        System.out.println(year);
    }
}
另一个问题(do-while循环)

经过几天的学习,老师给张三一道测试题,
让他先上机编写程序完成,
然后老师检查是否合格。如果不合格,则继续编写。……

image.png

image.png

特点:先执行,再判断

while循环和do-while循环的区别

  • 执行次序不同
  • 初始情况不满足循环条件时
    while循环一次都不会执行
    do-while循环不管任何情况都至少执行一次

作业

实现整数反转 用户输入任意一个数字比如12345,程序输出54321
要求用循环实现,并练习调试技巧

Scanner scanner =  new Scanner(System.in);
        System.out.println("请输入一个数");
        int num = scanner.nextInt();

        //12345模10能到最后一位,输出它,再除以10,1234
        //重复上一步
        while(num>0)
        {
            //12345模10能到最后一位,输出它,再除以10,1234
            System.out.print(num % 10);
            num = num / 10;
        }

for循环

问题回顾 输出100次“好好学习!”


image.png

for循环的语法和执行顺序


image.png

问题

循环输入某同学高考考试的5门课成绩,并计算平均分

分析
循环次数固定
使用for循环结构的步骤
1、分析循环条件和循环操作
2、套用for语法写出代码
3、检查循环是否能够退出

循环条件:循环的次数不足5,继续循环
循环操作:录入成绩,计算成绩之和

public class whileDemo2 {
    public static void main(String[] args) {

        //循环输入某同学高考考试的5门课成绩,并计算平均分
        Scanner scanner = new Scanner(System.in);
        System.out.println("输入学生姓名");
        String name = scanner.next();

        int score = 0;
        int total = 0;
        for(int i = 1; i <= 5; i++)
        {
            System.out.println("请输入"+i+"成绩");
            score = scanner.nextInt();
            total = total + score;
        }

        System.out.println(name+"的平均成绩是"+total/5);
    }

}

输出如图所示加法表

image.png

使用for循环:
1、循环初始化:i = 0;j = 输入值
2、循环条件:i<=输入值
3、循环操作:计算i+j
4、循环变量的改变:i++,j--

public class whileDemo2 {
    public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入一个值");
        int num = scanner.nextInt();//6

        int j = num;
        for(int i = 0; i <= num; i++)
        {

            System.out.println(i+"+"+j+"="+num);
            j--;
        }

    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 几个问题 张三oracle考试成绩未达到自己的目标。为了表明自己勤奋学习的决心,他决定写一百遍“好好学习,天天向上...
    蛋炒饭_By阅读 825评论 0 0
  • 配套视频教程 本文B站配套视频教程[https://www.bilibili.com/video/BV1fp4y1...
    __豆约翰__阅读 2,140评论 2 11
  • 前言:在Objective-C中,经常会遇到重复的执行同一段代码的情况。这时候就会使用到循环功能,和其它编程语言一...
    赵亦晨阅读 308评论 0 0
  • 一.古狄逊原则 ------成为领导第一步 重点:管理,就是让别人干活的艺术。 建议: 1.克服“我擅长、我来做”...
    天堂雨阅读 1,064评论 0 49
  • 从今天开始,把“什么更重要”这个问题加入认知体系,记得每天问自己。 事实上,我们每个人都有价值观,因为那是我们做事...
    君琰77阅读 256评论 0 1