10while

发布时间 2023-04-15 18:09:08作者: tin88eaby

循环:重复执行的事情
特征:循环操作/循环体、循环条件
程序中的循环=循环条件+循环操作

while:先判断,后执行

while(循环条件)
{
        循环操作;
}
    int i = 0;
        while(i<10000)
        {
            System.out.println(i+"hello world");
            i++;//更新变量

1.while结构与if很像,不过符合循环条件后前者执行后返回到执行条件,后者则直接结束
2.循环要注意更行变量,防止死循环(无限循环)
例题

//2010上网人数8000万,假设每年按30%增加,问哪一年人数增长到3亿?
        double persons = 0.8;
        int year = 2010;
        while (persons<3){
            year++;
            persons=persons*1.3;
        }
        System.out.println(year+"年人数增长到3亿");

        //计算100以内的偶数之和
//        int s = 0;
//        int sum = 0;
//        while (s<100){
//            s =s+2;
//            sum = sum + s;
//        }
//        System.out.println(sum);
//        int sum = 0 ;
//        int s = 1 ;
//        while (s <=100){
//            if (s % 2==0){
//                sum = sum +s;
//            }
//            s++;
//        }
//        System.out.println(sum);
        //不能被3整除的数之和
        int sum = 0 ;
        int s = 1 ;
        while (s <=100){
            if (s % 3!=0){
                sum = sum +s;
            }
            s++;
        }
        System.out.println(sum);

do...while:先执行后判断
do...while语法上至少执行一次

do
{
    循环操作;
}while(循环条件);

例题

//模拟商店
        int money = 0;
        Scanner input = new Scanner(System.in);
        String incontinue = "" ;
        do {
            System.out.println("请选择:\n1.T恤(100)  2.夹克(200)  3.衬衫(300)");
            int choice = input.nextInt();
            if (choice == 1){
                System.out.println("T恤\t"+100);
                money = money+100;
            }else  if (choice ==2){
                System.out.println("夹克\t"+200);
                money = money+200;
            }else  if (choice ==3){
                System.out.println("衬衫\t"+300);
                money = money+300;
            }else {
                System.out.println("输入有误");
            }

            System.out.println("是否继续?y/n");
            incontinue = input.next();
        }while (incontinue.equals("y"));//变量的作用域 最近一对{}
        System.out.println("一共"+money);