第5篇:重复执行——让程序帮你干活 Rust中文编程
第5篇重复执行——让程序帮你干活作者李金雨联系方式wbtm2718qq.com目标读者Rust中文编程核心理念AI时代必须使用中文编程母语编程阅读效率极高1. 开篇引入本课目标掌握for循环的使用掌握while循环的使用掌握loop循环的使用掌握break和continue语句的使用理解嵌套循环生活场景引入想象一下你需要做以下事情给班级里的每个同学发一份试卷反复练习一道数学题直到掌握每天早上起床、刷牙、洗脸、吃早饭这些都是重复的事情如果我们手动去做会很麻烦。但如果让程序来帮我们做这些重复的事情就会轻松很多。预期成果展示通过这节课的学习你将能够使用for循环遍历数据使用while循环根据条件重复执行使用loop循环创建无限循环使用break语句跳出循环使用continue语句跳过本次循环编写能够重复执行任务的程序2. 概念讲解for循环for循环就像点名册逐个点名遍历一个集合中的每个元素。fnmain(){for变量in集合{// 对每个元素执行的代码}}例如fnmain(){// 遍历数字1到5for数字in1..5{println!({} 是我喜欢的数字,数字);}// 遍历数组let数字们[1,2,3,4,5];for数字in数字们{println!(数字{},数字);}// 遍历字符串let名字张三;for字符in名字.chars(){println!(字符{},字符);}}while循环while循环就像反复练习只要条件满足就一直执行。fnmain(){while条件{// 条件满足时执行的代码}}例如fnmain(){letmut计数器0;while计数器5{println!(计数器{},计数器);计数器1;}println!(循环结束);}loop循环loop循环是一个无限循环会一直执行下去直到遇到break语句。fnmain(){loop{// 无限执行的代码if条件{break;// 跳出循环}}}例如fnmain(){letmut计数器0;loop{println!(计数器{},计数器);计数器1;if计数器5{break;// 当计数器达到5时跳出循环}}println!(循环结束);}break语句break语句用于跳出当前循环不再执行循环中的剩余代码。fnmain(){for数字in1..10{if数字5{break;// 当数字等于5时跳出循环}println!(数字{},数字);}println!(循环结束);}continue语句continue语句用于跳过本次循环的剩余代码直接开始下一次循环。fnmain(){for数字in1..5{if数字3{continue;// 当数字等于3时跳过本次循环}println!(数字{},数字);}println!(循环结束);}嵌套循环嵌套循环就是在一个循环里面再放一个循环。fnmain(){// 打印乘法表for行in1..9{for列in1..行{print!({} × {} {:2} ,列,行,行*列);}println!();}}3. 动手实践基础练习必做打印乘法表创建一个程序打印9×9乘法表fnmain(){for行in1..9{for列in1..行{print!({} × {} {:2} ,列,行,行*列);}println!();}}计算1到100的和创建一个程序计算1到100的和fnmain(){letmut和0;for数字in1..100{和数字;}println!(1到100的和{},和);}打印三角形创建一个程序打印一个三角形fnmain(){let行数5;for行in1..行数{// 打印空格for_in1..(行数-行){print!( );}// 打印星号for_in1..(2*行-1){print!(*);}println!();}}进阶练习选做猜数字游戏完整版创建一个程序模拟猜数字游戏fnmain(){let目标数字42;letmut猜测次数0;loop{letmut输入String::new();println!(请输入一个数字);std::io::stdin().read_line(mut输入).expect(读取失败);let猜测数字:i32match输入.trim().parse(){Ok(数字)数字,Err(_){println!(请输入有效的数字);continue;}};猜测次数1;if猜测数字目标数字{println!(猜小了);}elseif猜测数字目标数字{println!(猜大了);}else{println!(猜对了你用了{}次,猜测次数);break;}}}打印菱形创建一个程序打印一个菱形fnmain(){let大小5;// 上半部分for行in1..大小{for_in1..(大小-行){print!( );}for_in1..(2*行-1){print!(*);}println!();}// 下半部分for行in(1..size).rev(){for_in1..(大小-行){print!( );}for_in1..(2*行-1){print!(*);}println!();}}挑战练习拓展素数筛法创建一个程序找出1到100之间的所有素数fnmain(){println!(1到100之间的素数);for数字in2..100{letmut是素数true;for除数in2..数字{if数字%除数0{是素数false;break;}}if是素数{print!({} ,数字);}}println!();}4. 知识总结核心概念回顾for循环用于遍历集合中的每个元素while循环只要条件满足就一直执行loop循环无限循环直到遇到break语句break语句跳出当前循环continue语句跳过本次循环的剩余代码嵌套循环在一个循环里面再放一个循环关键代码速查循环类型语法示例for循环for 变量 in 集合 { 代码 }for 数字 in 1..5 { println!({}, 数字); }while循环while 条件 { 代码 }while 计数器 5 { 计数器 1; }loop循环loop { 代码; if 条件 { break; } }loop { println!(Hello); break; }break语句break;跳出循环continue语句continue;跳过本次循环常见错误提醒无限循环忘记在while或loop循环中修改条件导致循环永远不会结束死循环loop循环中忘记添加break语句变量作用域循环变量只在循环内部有效性能问题嵌套循环的层数过多会影响性能5. 课后作业巩固练习题编写一个程序打印1到100之间的所有偶数编写一个程序计算10的阶乘10!编写一个程序打印斐波那契数列的前20项创意编程题发挥你的创意创建一个程序打印一个复杂的图案编写一个程序模拟一个简单的倒计时器下篇预习提示下一篇我们将学习数据容器——管理大量数据就像学习如何使用不同的容器来管理大量的数据。预习一下什么是数据容器有哪些类型的数据容器如何使用数组如何使用向量如何使用元组恭喜你完成了第五篇教程你已经掌握了循环语句学会了如何让程序帮你重复执行任务。继续加油下一篇我们将学习如何管理大量数据学习交流如果你在学习过程中遇到任何问题欢迎联系我** 视频号“时空系”邮箱wbtm2718qq.com其他提示本人正在开发纯中文编程语言和编译器有兴趣的可以交流本人正在写一本基于中国母语思维习惯的数学教材可以让你一年内学完从初中到研究生的数学而且可以让你快速掌握人工智能的关键数学知识有兴趣的可以交流祝你学习愉快
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2571839.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!