for循环的用法与样例

循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句,当反复执行这个循环体时,需要在合适的时候把循环判断条件修改为false,从而结束循环,否则循环将一直执行下去,形成死循环。

for (初始化语句;循环条件语句;迭代语句) { 
    循环体语句; 
}

执行流程: 1.先执行初始化语句; 2.看循环条件语句中的结果是true还是false; 3.如果是true,执行循环体语句,继续执行; 如果是false,for语句结束; 4.执行迭代语句; 5.跳回第2步,继续执行;

eg:

/*
	打印1->5 和 5->1
*/
for(int i = 1; i <= 5; i++){
    System.out.println(i);
}
for(int i = 5; i >= 1; i--){
    System.out.println(i);
}
/*练习:打印所有的水仙花数 
    分析: 
    * 什么是水仙花数呢? 
    * 所谓的水仙花数是指一个三位数,其各位数字的立方和等于该数本身。 
    * 举例:153就是一个水仙花数。 
    * 153 = 1*1*1 + 5*5*5 + 3*3*3
    *
    * 1.三位数其实就告诉了我们水仙花数的范围 
    * 100-999 
    * 2.如何获取一个数据的每一个位上的数呢? 
    * 举例:我有一个数据153,请问如何获取到个位,十位,百位 
    * 个位:153%10 = 3; 
	* 十位:153/10%10 = 5; 
	* 百位:153/10/10%10 = 1; 
	* 千位:... 
    * 万位:... 
    * 3.让每个位上的立方和相加,并和该数据进行比较,如果相等,就说明该数据是水仙花数,在控制 台输出 */
public class ForTest04 { 
    public static void main(String[] args) { //通过循环获取到每一个三位数
        for(int x=100; x<1000; x++) { 
            //获取个位,十位,百位 
            int ge = x % 10; 
            int shi = x / 10 % 10; 
            int bai = x / 10 / 10 % 10;
            //让每个位上的立方和相加,并和该数据进行比较,如果相等,就说明该数据是水仙花数,在 控制台输出 
            if((ge * ge * ge + shi * shi * shi + bai * bai * bai) == x) { 					System.out.println(x); 
             } 
        } 
	} 
}
/**
*分析以下需求,并用代码实现: 
(1)打印出四位数字中个位+百位=十位+千位并且个位数为偶数,
千位数为奇数的数字,并打印符合条件的 数字的个数 
(2)符合条件的数字,每行显示5个,用空格隔开,
打印格式如下: 1012 1034 1056 1078 1100 1122 1144 1166 1188 1210
...... 符合条件的数字总共有: 165个
*/

public class ForTest06 {
	public static void main(String[] args){
			int sum = 0;
			for(int i = 1000 ; i < 10000 ; i+=2){
				int ge = i % 10;
				int shi = i / 10 % 10;
				int bai = i / 100 % 10;
				int qian = i / 1000 % 10;
				int sum1 = ge + bai;
				int sum2 = shi + qian;
				if(sum1 == sum2 && qian % 2 != 0){
					sum++;
					if(sum % 5 == 0){
						System.out.println(i);

					}else{
						System.out.print(i+" ");
					}
					
				}
				
			}
			System.out.println(sum);
	
	}
}

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值