java基础语法4-循环结构for, while 和 do...while

1.while循环

 while( 布尔表达式 ) {
//循环内容
}
public class Demo04 {
    public static void main(String[] args) {
        //求出1...100的和    5050
        //阶乘
        int num = 10;
        int sum = 0;
        int mul = 1;
        while(num>=1){
           // sum = sum + num;  //1+2+3+...+100
            mul = num*mul;             //4!=4*3*2*1
            num--;
        }
        //System.out.println("1到100相加之和为"+sum);
        System.out.println("乘积为"+mul);
    }
}

2. do…while循环

do{
执行语句;
控制条件语句;
}while(条件表达式)

特点:至少执行一次,但是for和while循环必须先判断条件是否成立。

3. for循环

for(初始化; 布尔表达式; 更新) {
//代码语句}
/*
    执行流程:
    1.初始化,i=0
    2.判断表达时是否成立
    3.执行代码语句
    4.i自增
    5.重复2.3步骤
     */

说明:首先执行初始化,接下来执行判断表达时是否正确,正确则继续执行循环,反之循环结束,执行循环后面的语句。

public class Demo05 {
    public static void main(String[] args) 
    /*
        执行流程:
        1.初始化,i=0
        2.判断表达时是否成立,i是否小于等于100
        3.执行代码语句,sum = sum + i
        4.i自增
        5.重复2.3步骤
         */
        int sum = 0;
        for(int i = 1;i <= 100;i++){
            sum = sum + i;
        }
        System.out.println("1到100的和为"+sum);

        //for循环好用的地方:
        //可以用它来做固定次数的东西:数字.for回车     自动回车生成for循环代码,可以控制for循环次数
    }
}

4.for循环嵌套(打印9*9乘法表)

这是每一个学java萌新必学的一个循环嵌套,以后,我们就都是用IDEA输出过9*9乘法表的人了。

public class Demo06 {
    public static void main(String[] args) {
        //99乘法表
        for(int x = 1;x <=9;x++){
        for(int y = 1;y <= x;y++){
            System.out.print(x +"*"+ y+"="+(x*y)+"\t");
        }
            System.out.println();
    }
    }
}

5.while和if嵌套(计算奇数和与偶数和)

继续练习一个while和if…else的嵌套

public class Demo07 {
    public static void main(String[] args) {
        //计算奇数和与偶数和
        int oddSum = 0;
        int evenSum = 0;
        int num = 0;
        while(num<100){
            num++;
            if(num%2 == 0){
                evenSum = evenSum + num;
            }else {
                oddSum = oddSum + num;
            }
        }
        System.out.println("奇数的和"+oddSum);
        System.out.println("偶数的和"+evenSum);
    }
}

6.测试题(两个小测试题可以自己巩固一下知识点)

### A.0~1000之间输出能被5整除的数,并且每三个数换一行
public class Demo08 {
    public static void main(String[] args) {
        //0~1000之间输出能被5整除的数,并且每三个数换一行
        for (int i = 0; i <= 1000; i++) {//for循环输出1000的数
            if (i%5==0){
                System.out.print(i+"\t");
            }//判断是否能被5整除,如果是则输出它
            if(i%(5*3)==0){
                System.out.println();//判断是否能被15整除,如果是则输出换行
            }
        }
    }
}
	B.打印一个居中的三角形
public class Demo09 {
    public static void main(String[] args) {
        //打印居中三角形
        int n = 7;
        for (int i = 1; i <= n; i++) {
            for (int j = n; j >=i ; j--) {
                System.out.print(" ");
            }//打印左边倒三角 第一行空7 第二行空6 以此类推
            for (int j = 1; j <=i; j++) {
                System.out.print("*");
            }//打印中间的左边三角 第一行1 第二行2 以此类推
            for (int j = 1; j <i; j++) {
                System.out.print("*");
            }//打印中间的右边三角 第一行0 第二行1 以此类推
            System.out.println( );//输出每一行后换行
        }
    }
}

break和continue
break:跳出循环
continue:终止当次循环
带标签 continue
return:结束方法的运行
今日份的学习到此结束~明天继续!
Whatever is worth doing is worth doing well.
任何值得做的,就把它做好。

发布了39 篇原创文章 · 获赞 1 · 访问量 574

猜你喜欢

转载自blog.csdn.net/love_to_share/article/details/102574769