For循环执行顺序流程

有以下for循环执行代码

较为基础,所以画图给大家讲解一下for循环执行步骤

1.执行for循环体里的第一个参数,也就是定义一个int整形变量,其变量名为i,并初始化为0

2.执行完第一个参数里的代码后,会执行第二个参数,判断i是否小于99

3.当第二个表达式为True时会去执行循环体里的代码,也就是当i不等于99的时候

4.执行完循环体里的代码后,就会去执行for循环的第三个参数也就是++i

当以上流程执行完成之后,进入非第一次执行循环时就不会执行for循环第一个参数了

而是直接去执行第二个参数里的判断表达式

然后在去执行循环体里的代码

然后在执行for循环的第三个参数

直到参数二:i>99的时候循环才会结束

### For循环执行顺序解析 For循环是一种常用的控制流结构,用于重复执行一段代码直到指定条件不再满足。不同编程语言中的`for`循环语法可能略有差异,但核心概念保持一致。 #### JavaScript `for` 循环执行流程 JavaScript 中的 `for` 循环由三部分组成:初始化表达式、测试条件以及迭代更新操作。每次进入循环前会先评估测试条件;如果返回真,则继续执行循环体内的语句,并在结束时运行迭代器来改变计数变量的状态以便下次再做同样的检查过程[^5]。 具体来说,在给定的例子中: - 初始化阶段设置了一个名为 `i` 的索引从零开始; - 测试条件设定了只要 `i` 小于五就可以持续运转下去; - 更新机制是在每完成一轮完整的内部处理之后增加该索引值直至达到终止状态为止。 ```javascript // 定义一个简单的 for 循环例子展示其工作原理 for (let i = 0; i < 5; i++) { console.log(`当前是第 ${i + 1} 轮`); } ``` 上述代码片段展示了如何利用 `for` 循环打印出连续五个回合的信息。每当程序到达新的轮次时就会输出相应的提示信息到控制台窗口内显示出来。 #### 嵌套 `for` 循环实例分析 当涉及到多维数组或其他复杂的数据集遍历时,可能会遇到需要在一个更大的范围内多次应用相同模式的情况——这正是嵌套 `for` 循环发挥作用之处。考虑如下场景:构建一个三角形图案,其中每一行都含有递增数量的星号(*)字符[^4]。 ```javascript // 使用双重 for 循环创建直角三角形图形 const rows = 5; for (let row = 1; row <= rows; row++) { // 外层负责管理行数变化 let stars = ''; for (let starCount = 0; starCount < row; starCount++) { // 内层决定每行列的数量 stars += '*'; } console.log(stars); } ``` 此段脚本通过两重相互关联却又各自独立运作着的小循环实现了预期效果。外侧那个决定了总共会有多少条记录被生成并呈现在终端界面上面;而里边的那个则精确指明了各别项目之间应该填充几个特定符号作为分隔符之用。 #### Bash Shell Scripting 中的 `for` 循环形式 除了传统的基于范围的形式之外,某些环境还提供了更加灵活的方式来定义循环边界。例如,在Shell脚本编写当中存在一种模仿C风格的简洁写法允许开发者直接声明起始位置、终点界限还有步长参数等细节内容[^2]。 ```bash #!/bin/bash # 展示 bash shell 下 c-style 的 for loop 实现方式 for ((counter=0; counter<3; counter++)) do echo "Counter value is $counter" done ``` 这段Bash脚本同样遵循类似的逻辑框架来进行一系列有序的操作序列调用。它能够有效地简化原本较为冗长复杂的指令集合从而提高可读性和维护效率。 #### Scala `for` 表达式的特性补充说明 值得注意的是,在函数式编程范型下像Scala这样的高级语言赋予了传统意义上的`for`循环更多可能性。特别是引入了`yield`关键字使得可以在遍历的同时收集符合条件的结果形成一个新的列表对象供后续进一步加工处理[^3]。 ```scala val numbers = List(1, 2, 3, 4) // 利用 scala 的 for comprehension 和 yield 构造新 list val doubledEvensOnly = for { n <- numbers if n % 2 == 0 // 只保留偶数值项 } yield n * 2 // 对这些元素实施加倍运算 println(doubledEvensOnly) // 输出: List(4, 8) ``` 这里给出了一种优雅的方法去筛选原始输入源里的奇偶性质不同的成员并且对其施加变换规则最终得到期望形态的新集合表示。
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

17岁boy想当攻城狮

感谢打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值