SESSION ID: 032
新手入门 第三节 Lua基础语法入门:循环结构
- 课程总结:Lua基础语法第三课 - 循环结构
- 1. 课程标题
- Lua基础语法第三课:循环结构深入解析
- 2. 课程链接
- https://acnr1yklaaqz.feishu.cn/minutes/obcnmb2nf64kub6evwvzp17r
- 3. 课程总结
### 本节课系统讲解了Lua中的三种循环结构
### 核心知识点
- 1. for循环 - 最常用的循环结构
- 语法:for 变量=初始值,结束值,步长 do ... end
- 支持嵌套循环(双重/多重循环)
- 使用break关键字可提前退出循环
- 2. while循环 - 条件循环
- 语法:while 条件 do ... end
- 需注意避免无限循环,需在循环体内改变条件
- 3. repeat循环 - 后测试循环
- 语法:repeat ... until 条件
- 至少执行一次循环体
- 4. 关键概念
- 循环变量的作用域与生命周期
- 循环控制(break的使用)
- 循环效率优化
- 栈与寄存器的基本概念
- 4. 学习方式建议
- 1. 理解优先:先理解循环的执行流程,再动手编码
- 2. 从简到繁:从单层循环开始,逐步过渡到多层嵌套
- 3. 调试观察:使用打印语句观察循环变量的变化
- 4. 手写练习:脱离编辑器,手写循环结构代码
- 5. 实际问题:将循环应用于实际游戏功能开发
- 5. 作业题目
- 一、选择题(10题)
- 1. 下列哪个是for循环的正确语法?
[[for i=1,10 do end^^for i=1 to 10 do end^^for i=1,10 end^^for i=1;10 do end]]
- 2. 在循环中,用于立即退出循环的关键字是?
[[break^^exit^^return^^continue]]
- 3. 以下代码执行后,n的最终值是多少?
- local n = 0
- for i=1,5 do
- n = n + i
- end
[[15^^10^^5^^0]]
- 4. 以下while循环会执行多少次?
- local i = 3
- while i > 0 do
- i = i - 1
- end
[[3次^^2次^^4次^^无限循环]]
- 5. 下列代码的输出结果是什么?
- for i=2,10,2 do
- print(i)
- end
[[2,4,6,8,10^^1,2,3,4,5^^2,3,4,5,6^^2,4,6,8]]
- 6. repeat循环的特点是?
[[至少执行一次循环体^^可能一次都不执行^^必须先定义条件^^不能使用break]]
- 7. 双重循环中,外层循环执行3次,内层循环执行4次,总共执行多少次?
[[12次^^7次^^3次^^4次]]
- 8. 以下代码存在什么问题?
- local n = 1
- while n > 0 do
- n = n + 1
- end
[[无限循环^^语法错误^^变量未定义^^逻辑错误]]
- 9. 在996引擎中,在M2控制台输出信息应该使用?
[[RELEASE^^print^^echo^^output]]
- 10. 循环变量i的作用域在哪里?
[[循环体内部^^全局作用域^^文件作用域^^函数作用域]]
- 二、问答题(5题)
- 1. ((请描述for循环、while循环和repeat循环三者的区别,并举例说明各自适用的场景。))
- 2. ((解释以下代码的执行过程和最终结果:))
- local sum = 0
- for i=1,5 do
- for j=1,i do
- sum = sum + 1
- end
- end
- 3. ((在游戏开发中,哪些功能会经常用到循环结构?请至少举例三个实际应用场景。))
- 4. ((以下代码有什么问题?如何改进?))
- local count = 0
- while true do
- count = count + 1
- print("当前次数:"..count)
- end
- 5. ((编写一个Lua函数,使用循环找出100以内所有的质数并打印出来。))
### 作业提交要求
- 1. 选择题和填空题直接作答
- 2. 问答题需详细阐述思路
- 3. 第5题需提供完整可运行的代码
- 4. 所有作业在下次课前完成
### 学习目标
- 熟练掌握三种循环结构的使用
- 能够编写双重循环解决实际问题
- 理解循环控制语句的作用
- 为后续游戏功能开发打下基础