版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、循环结构循环结构 顺序、分支、循环是结构化程序设计的顺序、分支、循环是结构化程序设计的三种基本结构,本章主要任务是学习如三种基本结构,本章主要任务是学习如何使用循环结构解决问题。何使用循环结构解决问题。主要内容主要内容nfor循环循环ndo循环循环nwhile循环循环n循环的中断循环的中断任务任务1n任务功能:任务功能: 计算计算1100之间的奇数和及偶数和之间的奇数和及偶数和 n学习目的:学习目的: 利用利用for循环解决简单问题;循环解决简单问题;程序代码 privateprivate voidvoid button1_Click( button1_Click(objectobject s
2、ender, sender, EventArgsEventArgs e) e) intint evensum=0, oddsum evensum=0, oddsum=0;=0; forfor ( (intint i = 1; i = 100; i+) i = 1; i = 100; i+) ifif (i % 2 = 0) (i % 2 = 0) evensum evensum += i; += i; elseelse oddsum oddsum += i; += i; textBox1.Text = textBox1.Text = ConvertConvert.ToString(oddsum
3、.ToString(oddsum);); textBox2.Text = textBox2.Text = ConvertConvert.ToString(evensum.ToString(evensum);); 相关知识nfor循环循环 for (初始化初始化; 布尔表达式布尔表达式; 步长步长) 循环体循环体 参数说明参数说明n初始化:用于定义和初始化循环变量的表达式,用于初始化:用于定义和初始化循环变量的表达式,用于循环开始时执行,且只执行一次。例如循环开始时执行,且只执行一次。例如int i=1,这个,这个表达式说明整型变量表达式说明整型变量i是局限于循环本身的变量,在循是局限于循环本身
4、的变量,在循环结束后,该变量即终止存在。环结束后,该变量即终止存在。n布尔表达式:这是一个结果为布尔值的表达式,用于布尔表达式:这是一个结果为布尔值的表达式,用于决定何时继续循环,何时终止循环。例如决定何时继续循环,何时终止循环。例如i 0.00001); (t 0.00001); textBox1.Text = textBox1.Text = ConvertConvert.ToString(i.ToString(i);); textBox2.Text = textBox2.Text = ConvertConvert.ToString(se.ToString(se);); 相关知识1ndo循环
5、循环 do 循环体循环体 while (布尔表达式布尔表达式);ndo语句的执行过程:首先执行循环体语句的执行过程:首先执行循环体中的语句,然后计算布尔表达式的值,中的语句,然后计算布尔表达式的值,若该值为真,则再次执行循环体中的若该值为真,则再次执行循环体中的语句;否则,退出该循环,执行语句;否则,退出该循环,执行while语句后面的第一条语句。语句后面的第一条语句。任务任务3n任务功能:任务功能: 求两数最大公约数和最小公倍数求两数最大公约数和最小公倍数n学习目的:学习目的: 学习学习while循环循环 求两自然数求两自然数m m,n n的最大公约数和最小公倍数。的最大公约数和最小公倍数。
6、设计思想:设计思想: 假设假设mnmn (1 1)m m除以除以n n得到余数得到余数r r; (2 2)若)若r=0r=0,则,则n n为最大公约数,算法结束;为最大公约数,算法结束;否则执行(否则执行(3 3);); (3 3)nmnm,rnrn,再转到(,再转到(1 1)执行。)执行。程序代码 privateprivate voidvoid button1_Click( button1_Click(objectobject sender, sender, EventArgsEventArgs e) e) intint m, n, r, t; m, n, r, t; m = m = Con
7、vertConvert.ToInt32(textBox1.Text); .ToInt32(textBox1.Text); /取两个数取两个数 n = n = ConvertConvert.ToInt32(textBox2.Text);.ToInt32(textBox2.Text); ifif (m n) t = m; m = n; n = t; (m nmn whilewhile( n 0) ( n 0) /用辗转相除法,直到用辗转相除法,直到n=0 n=0 r = m % n; r = m % n; m = n; m = n; n = r; n = r; textBox3.Text = te
8、xtBox3.Text = ConvertConvert.ToString(m.ToString(m); ); /m/m就是最大公约数就是最大公约数 t = m;t = m; m = m = ConvertConvert.ToInt32(textBox1.Text);.ToInt32(textBox1.Text); n = n = ConvertConvert.ToInt32(textBox2.Text);.ToInt32(textBox2.Text); textBox4.Text = textBox4.Text = ConvertConvert.ToString(m.ToString(m *
9、 * n) / t); n) / t); 相关知识1nwhile循环循环 while (布尔表达式布尔表达式) 循环体循环体 nwhilewhile语句的执行过程:首先计算布尔语句的执行过程:首先计算布尔表达式的值,若该值为真,则执行循表达式的值,若该值为真,则执行循环体中的语句;否则,退出该循环,环体中的语句;否则,退出该循环,执行执行whilewhile语句后面的第一条语句。语句后面的第一条语句。相关知识2n死循环死循环 while循环和循环和do循环的特殊形式,条件永远为真:循环的特殊形式,条件永远为真: while(truewhile(true) ) 循环体循环体 do do 循环体循
10、环体 while(truewhile(true););这样的循环称为死循环,除非在循环体中设这样的循环称为死循环,除非在循环体中设置跳出循环的条件。置跳出循环的条件。 任务任务4n任务功能:任务功能: s= n!,求!,求n,使得,使得s不超过不超过50000 。 n学习目的:学习目的: 学习循环的中断;学习循环的中断;程序代码 privateprivate voidvoid button1_Click( button1_Click(objectobject sender, sender, EventArgsEventArgs e) e) intint i; i; doubledouble s
11、 = 1; s = 1; forfor (i = 1; i= 100; i+) (i = 1; i 50000) (s 50000) breakbreak; ; /如果如果s50000s50000,则终止循环,则终止循环 textBox1.Text = textBox1.Text = ConvertConvert.ToString(i-1);.ToString(i-1); textBox2.Text = textBox2.Text = ConvertConvert.ToString(s/i.ToString(s/i);); 相关知识1n循环的中断循环的中断 在某些情况下,循环可以不按照预先设计
12、的那在某些情况下,循环可以不按照预先设计的那样执行,需要提前强制退出循环。样执行,需要提前强制退出循环。C#提供了提供了三种中断控制流程的关键字:三种中断控制流程的关键字:break、continue和和goto。 1、break语句语句 break语句直接跳出循环。在任务语句直接跳出循环。在任务2中,在循环中,在循环内部检查终止条件,只要内部检查终止条件,只要s50000,即可中途,即可中途退出循环。退出循环。 2、continue语句语句 continue语句仅中断本次循环,并直接进入下语句仅中断本次循环,并直接进入下次循环。次循环。 2、continue语句语句 continue语句仅中
13、断本次循环,并直接进入下语句仅中断本次循环,并直接进入下次循环。次循环。 3、goto语句语句 可以跳出循环,转到已标记好的位置。可以跳出循环,转到已标记好的位置。 任务任务5n任务功能:任务功能: 设计一个程序,求有趣的三位数,这个三位数的设计一个程序,求有趣的三位数,这个三位数的各位数字立方和等于该数字本身,它也叫水仙花各位数字立方和等于该数字本身,它也叫水仙花数。例如,数。例如,153=13+53+33,153是水仙花数。是水仙花数。 n学习目的:学习目的: 学习循环的嵌套学习循环的嵌套 程序代码 privateprivate voidvoid button1_Click( button
14、1_Click(objectobject sender, sender, EventArgsEventArgs e) e) textBox1.Text = textBox1.Text = 水仙花数是:水仙花数是: ; ; /i/i存放百位,存放百位,j j存放十位,存放十位,k k存放个位存放个位 intint i, j, k, m, n; i, j, k, m, n; forfor (i = 1; i = 9; i+) (i = 1; i = 9; i+) forfor (j = 0; j = 9; j+) (j = 0; j = 9; j+) forfor (k = 0; k = 9; k
15、+) (k = 0; k = 9; k+) m = i m = i * * 100 + j 100 + j * * 10 + k; 10 + k; n = ( n = (intint)()(MathMath.Pow(i.Pow(i, 3) + , 3) + MathMath.Pow(j.Pow(j, 3) + , 3) + MathMath.Pow(k.Pow(k, 3);, 3); ifif (m = n) (m = n) textBox1.Text = textBox1.Text textBox1.Text = textBox1.Text + + EnvironmentEnvironmen
16、t.NewLine.NewLine + + Convert Convert.ToString(m.ToString(m);); 相关知识1n循环嵌套循环嵌套 在一个循环体内又包含了一个完整的循环,在一个循环体内又包含了一个完整的循环,这样的结构称为多重循环或循环的嵌套。这样的结构称为多重循环或循环的嵌套。 例如,任务例如,任务4中的中的for循环嵌套形式:循环嵌套形式: for (i = 1; i = 9; i+) for (j = 0; j = 9; j+) for (k = 0; k n2) (n1 n2) intint t = n1; n1 = n2; n2 = t; t = n1; n
17、1 = n2; n2 = t; textBox3.Text = textBox3.Text = 两数之间的素数两数之间的素数 ; ; forfor ( (intint m = n1; m = n2; m+) m = n1; m = n2; m+) ifif (m = 1) (m = 1) continuecontinue; ; /1/1不是素数不是素数 boolbool f = f = truetrue; ; forfor ( (intint i = 2; i =m-1; i+) i = 2; i =m-1; i+) ifif (m % i = 0) f = (m % i = 0) f = falsefalse; ; breakbreak; ; ifif (f) textBox
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 技术创新工作室创建与发展
- 2026山东潍坊润丰化工股份有限公司西厂区招聘42人备考题库有答案详解
- 2026广东佛山市第二人民医院服务中心招聘18人备考题库及答案详解一套
- 2026广东省能源集团有限公司数字化管理办公室首席架构师招聘1人备考题库附答案详解(能力提升)
- 2026重庆科瑞制药(集团)有限公司招聘1人备考题库完整参考答案详解
- 2026广西南宁良庆区玉龙社区卫生服务中心诚聘妇产科医生1人备考题库及一套完整答案详解
- 2026上海市血液中心上半年专业技术人员招聘12人备考题库含答案详解(能力提升)
- 2026中国科学院微生物研究所科技岗位助理研究员(正式编制)招聘备考题库(长期有效)含答案详解(能力提升)
- 2026青海省核工业核地质研究院非编工勤岗人员招聘2人备考题库及完整答案详解一套
- 2026广西现代职业技术学院招聘8人备考题库及答案详解(名校卷)
- 2026年上海市黄浦区初三语文二模试卷及答案
- 航天军工行业从海外看中国商发产业链前景
- 2026公司级新员工安全培训教材
- 2026年各地算力统筹与算电协同精细化政策汇编解读
- 配电架空线路标准施工工艺课件
- 医疗器械网络经营培训
- (完整版)钢结构厂房施工组织设计(含土建)
- 最高人民法院实施民法典继续有效适用的司法解释文件汇编(下)
- 2023年广西二造《建设工程计量与计价实务(安装)》高频核心题库300题(含解析)
- GB/T 36501-2018土壤制图1∶25 000 1∶50 000 1∶100 000中国土壤图用色和图例规范
- 套管强度校核全解课件
评论
0/150
提交评论