java中的for循环

  • Post author:
  • Post category:java


定义形式:for(int i=0;i<10;i++){};

初始化 + 布尔表达式 + 更新



求1~100内的和

package com.scanner.demo;

public class ForDemo01 {
    public static void main(String[] args) {
        int sum=0;

        for (int i=1;i<=100;i++){//初始化  布尔表达式  更新
            sum=sum+i;
        }
        System.out.println("100以内的总和为:"+sum);
    }
}



求1~100内的奇数和和偶数和

package com.scanner.demo;

public class ForDemo01 {
    public static void main(String[] args) {
        int jsum=0;
        int osum=0;

        for (int j = 0; j <=100; j++) {
            if (j%2==0){
                osum=osum+j;
            }
            else {
                jsum=jsum+j;
            }

        }
        System.out.println("100以内的奇数和为:"+jsum);
        System.out.println("100以内的偶数和为:"+osum);
    }
}



求0~1000能被5整除并且每三个数换一行

package com.scanner.demo;

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

        for (int m = 0; m < 1000; m++) {
            if (m%5==0){
                System.out.print(m+" ");
            }
            if (m%(5*3)==0){//每3个数换一行
                System.out.println();//换行
            }

        }


    }
}



增强for循环

形式:for(int x:m){ System.out.println(x);}定义的x在m中遍历,将遍历的每一个数值赋值给x然后一个一个输出。

package com.scanner.demo;

public class ForDemo02 {
    public static void main(String[] args) {
       int [] m={1,2,3,4,5};
        for (int x:m){//增强for循环
            System.out.println(x);
        }
    }
}



求水仙花数

形式:407=4*4*4+0*0*0+7*7*7;也就是说

这个数

等于

个位的三次方+十位的三次方 + 百位的三次方。

package com.scanner.demo;

public class ForDemo02 {
    public static void main(String[] args) {
 for (int i = 100; i <999 ; i++) {
            int g=i%10;
            int s=i/10%10;
            int b=i/100%10;
            if (i==g*g*g+s*s*s+b*b*b){
                System.out.println(i);
            }
        }
    }
}



求101到150之间所有的质数

package com.scanner.demo;

public class ForDemo02 {
    public static void main(String[] args) {
        int n ;
        int m ;
        for ( m = 101; m < 150; m++) {
            for ( n = 2; n <=m/2 ; n++) {
                if (m%n==0){
                    break;
                }
            }
            if (n>m/2){
                System.out.println(m+"是质数!");
            }
        }
    }
}


if (m%n==0)如果被执行

:说明在2~m/2这个数值之间存在能够整除m的这个数。

说明m这个数不是质数。


if (n>m/2)如果被执行

:说明m这个数在2~m/2之间不能找到一个数,能够整除m,

所以m为质数



打印三角形

package com.scanner.demo;

public class ForDemo02 {
    public static void main(String[] args) {
        //打印三角形
        for (int i = 1; i <=5 ; i++) {
            for (int j = 5; j>=i ; j--) {
                System.out.print(" ");
            }

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

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



版权声明:本文为m0_65313675原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。