单层for循环最详解

一、单层for循环语法::
务必一定死记住“初始化表达式1”和‘'布尔表达式2”和“表达式3”之间用的是英文分号而不是英文逗号
在这里插入图片描述
二、单层for循环程序循环流程图/执行逻辑图:
在这里插入图片描述
三、单层for循环简单案例:
计算1到10之间的整数和,输出结果是55,代码如下图所示:(看时把下图中的100看做10即可,因为截的是视频,但javascript中的图是我自己写的代码)
在这里插入图片描述
详细解析单层for循环简单案例:
先执行初始化表达式int i=0,很明显i=0时是满足布尔表达式2中i<=10的条件(解释:因为阿拉伯数字是0<10的)。布尔表达式成立所以直接执行代码体语句sum +=i中的代码(sum=sum+i=0+0=0)。根据循环流程图可知再执行表达式3中的i++代码(i++等价于i=i+1=0+1=1)。
根据循环流程图可知再执行布尔表达式2中i<=10的条件,很明显i=1时是满足布尔表达式2中i<=10的条件(解释:因为阿拉伯数字是1<10的)。布尔表达式成立所以直接执行代码体语句sum +=i中的代码(sum=sum+i=1+0=1)。根据循环流程图可知再执行表达式3中的i++代码(i++等价于i=i+1=1+1=2)。
根据循环流程图可知再执行布尔表达式2中i<=10的条件,很明显i=2时是满足布尔表达式2中i<=10的条件(解释:因为阿拉伯数字是2<10的)。布尔表达式成立所以直接执行代码体语句sum +=i中的代码(sum=sum+i=1+2=3)。根据循环流程图可知再执行表达式3中的i++代码(i++等价于i=i+1=2+1=3)。
根据循环流程图可知再执行布尔表达式2中i<=10的条件,很明显i=3时是满足布尔表达式2中i<=10的条件(解释:因为阿拉伯数字是3<10的)。布尔表达式成立所以直接执行代码体语句sum +=i中的代码(sum=sum+i=3+3=6)。根据循环流程图可知再执行表达式3中的i++代码(i++等价于i=i+1=3+1=4)。
根据循环流程图可知再执行布尔表达式2中i<=10的条件,很明显i=4时是满足布尔表达式2中i<=10的条件(解释:因为阿拉伯数字是4<10的)。布尔表达式成立所以直接执行代码体语句sum +=i中的代码(sum=sum+i=6+4=10)。根据循环流程图可知再执行表达式3中的i++代码(i++等价于i=i+1=4+1=5)。
根据循环流程图可知再执行布尔表达式2中i<=10的条件,很明显i=5时是满足布尔表达式2中i<=10的条件(解释:因为阿拉伯数字是5<10的)。布尔表达式成立所以直接执行代码体语句sum +=i中的代码(sum=sum+i=10+5=15)。根据循环流程图可知再执行表达式3中的i++代码(i++等价于i=i+1=5+1=6)。
根据循环流程图可知再执行布尔表达式2中i<=10的条件,很明显i=6时是满足布尔表达式2中i<=10的条件(解释:因为阿拉伯数字是6<10的)。布尔表达式成立所以直接执行代码体语句sum +=i中的代码(sum=sum+i=15+6=21)。根据循环流程图可知再执行表达式3中的i++代码(i++等价于i=i+1=6+1=7)。
根据循环流程图可知再执行布尔表达式2中i<=10的条件,很明显i=7时是满足布尔表达式2中i<=10的条件(解释:因为阿拉伯数字是7<10的)。布尔表达式成立所以直接执行代码体语句sum +=i中的代码(sum=sum+i=21+7=28)。根据循环流程图可知再执行表达式3中的i++代码(i++等价于i=i+1=7+1=8)。
根据循环流程图可知再执行布尔表达式2中i<=10的条件,很明显i=8时是满足布尔表达式2中i<=10的条件(解释:因为阿拉伯数字是8<10的)。布尔表达式成立所以直接执行代码体语句sum +=i中的代码(sum=sum+i=28+8=36)。根据循环流程图可知再执行表达式3中的i++代码(i++等价于i=i+1=8+1=9)。
根据循环流程图可知再执行布尔表达式2中i<=10的条件,很明显i=9时是满足布尔表达式2中i<=10的条件(解释:因为阿拉伯数字是9<10的)。布尔表达式成立所以直接执行代码体语句sum +=i中的代码(sum=sum+i=36+9=45)。根据循环流程图可知再执行表达式3中的i++代码(i++等价于i=i+1=9+1=10)。
根据循环流程图可知再执行布尔表达式2中i<=10的条件,很明显i=10时是满足布尔表达式2中i<=10的条件(解释:因为阿拉伯数字是10=10的)。布尔表达式成立所以直接执行代码体语句sum +=i中的代码(sum=sum+i=45+10=55)。根据循环流程图可知再执行表达式3中的i++代码(i++等价于i=i+1=10+1=11)。
根据循环流程图可知再执行布尔表达式2中i<=10的条件,很明显i=11时不满足****布尔表达式2中i<=10的条件(解释:因为阿拉伯数字是11<10是不成立的)。所以在判断框布尔表达式2时就执行左边的false语句,从而跳出循环,从而1到10的之间的总数和就是输出sum=sum+i=45+10=55,即为案例结果。
四、"三中单层for循环简单案例"的案例详解对js代码同样有用:
在这里插入图片描述
五、不要看流程图直接根据i++理解单层for循环(因为很多同学不是计算机专业的,转行过来的,有些不太习惯看流程图,所有我们用i++来理解,是2020年4月25我朋友李杰介绍的方法,挺实用的):
在这里插入图片描述

看上图同样先执行初始化表达式1:var i =1;。再执行布尔表达式2:i <= 10;。执行完布尔表达式2我们不需要考虑任何的逻辑思维,我们直接执行代码体:sum +=i;(因为i++是先执行后面的代码体再自身加1,i++先执行再自增这个公理不仅仅对数字管用,对for循环同样管用,为什么对for循环同样管用,因为这是李杰工作摸索出来的,相比书本上和老师口中所说的,基本上只表达出了i++先执行再自增对数字管用的道理。所以还是要多敲代码,多实践,因为实践是检验真理的标准!)
欢迎留言讨论交流,大家一起加油,come on!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值