循环结构

在 Lua 编程中,循环结构用于重复执行代码块。Lua 提供了三种常用的循环结构:whilerepeat-untilfor

1. while 循环

while 循环会在条件为真时重复执行代码块。语法如下:

while condition do
    -- 代码块
end
  • condition 是一个布尔表达式,当其为真时,代码块会被执行。
  • 在每次循环迭代之前和之后,都会对 condition 进行判断。

以下是一个示例,展示了如何使用 while 循环输出数字 1 到 5:

local i = 1
while i <= 5 do
    print(i)
    i = i + 1
end

输出:

1
2
3
4
5

2. repeat-until 循环

repeat-until 循环会在条件为假时重复执行代码块。语法如下:

repeat
    -- 代码块
until condition
  • condition 是一个布尔表达式,当其为假时,循环会继续执行。
  • 在每次循环迭代之前和之后,都会对 condition 进行判断。

以下是一个示例,展示了如何使用 repeat-until 循环输出数字 1 到 5:

local i = 1
repeat
    print(i)
    i = i + 1
until i > 5

输出:

1
2
3
4
5

3. for 循环

for 循环是一种常用的循环结构,用于遍历一个范围内的值。语法如下:

for variable = start, stop, step do
    -- 代码块
end
  • variable 是一个变量,用于保存当前循环迭代的值。
  • start 是起始值,stop 是结束值(包含在范围内)。
  • step 是可选的步长,默认为 1。

以下是一个示例,展示了如何使用 for 循环输出数字 1 到 5:

for i = 1, 5 do
    print(i)
end

输出:

1
2
3
4
5

你还可以自定义起始值、结束值和步长:

for i = 10, 1, -2 do
    print(i)
end

输出:

10
8
6
4
2

4. 嵌套循环

在 Lua 中,你可以嵌套循环,即在一个循环结构内部再使用另一个循环结构。这样可以实现更复杂的循环逻辑。

以下是一个示例,展示了如何使用嵌套循环输出九九乘法表:

for i = 1, 9 do
    for j = 1, i do
        io.write(string.format("%d*%d=%-2d ", j, i, j * i))
    end
    io.write("\n")
end

输出:

1*1=1  
1*2=2  2*2=4  
1*3=3  2*3=6  3*3=9  
1*4=4  2*4=8  3*4=12 4*4=16 
1*5=5  2*5=10 3*5=15 4*5=20 5*5=25 
1*6=6  2*6=12 3*6=18 4*6=24 5*6=30 6*6=36 
1*7=7  2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49 
1*8=8  2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64 
1*9=9  2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81 

这就是关于 Lua 循环结构的详细教程。希望对你有所帮助!如果有任何进一步的问题,请随时提问。

作者:xiazm  创建时间:2023-11-30 16:31
最后编辑:admin  更新时间:2024-07-26 17:15