Visual C#程序设计教程 教学课件 ppt 作者 刘先省 陈克坚 第6章 循环结构程序设计

上传人:E**** 文档编号:89183828 上传时间:2019-05-20 格式:PPT 页数:45 大小:251KB
返回 下载 相关 举报
Visual C#程序设计教程 教学课件 ppt 作者 刘先省 陈克坚 第6章 循环结构程序设计_第1页
第1页 / 共45页
Visual C#程序设计教程 教学课件 ppt 作者 刘先省 陈克坚 第6章 循环结构程序设计_第2页
第2页 / 共45页
Visual C#程序设计教程 教学课件 ppt 作者 刘先省 陈克坚 第6章 循环结构程序设计_第3页
第3页 / 共45页
Visual C#程序设计教程 教学课件 ppt 作者 刘先省 陈克坚 第6章 循环结构程序设计_第4页
第4页 / 共45页
Visual C#程序设计教程 教学课件 ppt 作者 刘先省 陈克坚 第6章 循环结构程序设计_第5页
第5页 / 共45页
点击查看更多>>
资源描述

《Visual C#程序设计教程 教学课件 ppt 作者 刘先省 陈克坚 第6章 循环结构程序设计》由会员分享,可在线阅读,更多相关《Visual C#程序设计教程 教学课件 ppt 作者 刘先省 陈克坚 第6章 循环结构程序设计(45页珍藏版)》请在金锄头文库上搜索。

1、第1章 程序设计语言与程序设计方法 第2章 Visual C#概述 第3章 C#语法基础 第4章 顺序结构程序设计 第5章 选择结构程序设计 第6章 循环结构程序设计 第7章 面向对象编程技术 第8章 继承,第9章 数组与自定义类型 第10章 菜单、工具栏与状态栏 第11章 文件操作 第12章 数据库技术 第13章 ActiveX控件 第14章 异常处理与跟踪调试 第15章 开发Web应用程序 第16章 部署应用程序,下一页,Visual C#程序设计教程,上一页,在编写程序过程中,往往出现相同类型操作需要重复出现,如实现1+2+100,则需要做99次加法,这类问题使用循环语句解决,可以使问题

2、变得简单。即循环语句用于实现语句块的重复执行。根据问题的具体情况,C#中提供了四种不同的循环机制:for循环、while循环、dowhile循环和foreach循环。这里介绍前三种循环机制,foreach循环将在数组中介绍。 6.1 for循环语句 for循环常常用于已知循环次数的情况,使用该循环时,测试是否满足某个条件,如果满足条件,则进入下一次循环,否则,退出该循环。,章节目录,上一页,下一页,6.1.1 for语句的语法格式 for循环语句格式为: for (表达式1; 表达式2; 表达式3) 循环语句序列; 其中表达式1用于参与循环条件变量的初始化,该表达式仅执行一次;表达式2为条件判

3、断表达式,即每次循环体开始之前,判断该表达式是否成立,如果成立,进入下一次循环,否则,循环结束;表达式3用于参与循环条件变量的运算,一般为递增或递减的循环计数器。循环语句序列用于描述重复执行的语句,当语句序列中仅含有一条语句时,花括号可以省略。,章节目录,上一页,下一页,流程图如图6-1所示。 该结构中,表达式1、 表达式2、表达式3是可选的, 但应该注意死循环的发生。 如表达式2省略,并且不采 用转移语句,会导致死循环 的发生。可以在循环体中的 任何位置放置break语句来强 制终止for循环随时跳出 for循环。break语句通常包 含于if语句中。,章节目录,上一页,下一页,图6-1 f

4、or循环流程图,6.1.2 for循环语句的使用 根据下面的实例,了解for语句的工作流程及实现方法。 【例6-1】计算1+2+3+100。使用for语句实现。 分析:该问题属于重复执行加法的问题,并且参与运算的两个操作数不断的按规律增加。该类问题可以通过循环进行解决。 (1) 建立项目 (2) 设计窗体 (3) 设计代码,章节目录,上一页,下一页,在窗体设计图上,双击按钮button1编写【计算】按钮的Click(单击)事件代码为: private void button1_Click(object sender, System.EventArgs e) int sum; sum=0; fo

5、r(int k=1;k=100;k=k+1) sum=sum+k; label1.Text=“从1加到100值为“+sum.ToString();,章节目录,上一页,下一页,程序的运行结果如图6-2所示的左图,单击“计算”按钮,将在标签上显示运行结果。,章节目录,上一页,下一页,图6-2 程序运行结果,【例6-2】计算n!,假设n=10。 分析:该例实现阶乘的运算,可以使用改变乘数的值进行实现,使用循环可以方便的实现该类问题。程序的运行结果如图6-3左图所示。,章节目录,上一页,下一页,图6-3 计算n!,编写【计算】按钮的Click(单击)事件代码为: private void button

6、1_Click(object sender, System.EventArgs e) int sum,k; sum=1; for(k=1;k=10;k+) sum=sum*k; textBox1.Text=sum.ToString(); ,章节目录,上一页,下一页,6.2 while循环语句 与for循环语句比较,while语句使用的频率要低一些,它可以用于不知道循环次数的情况;用于在循环时判断是否满足某个条件。每一次在循环的顶部进行检测循环是否继续,当循环的条件为假时,退出循环。 6.2.1 while循环语句的语法格式 while循环语句的格式为: while (布尔条件表达式) 语句序列

7、; 布尔条件表达式是每次循环开始前进行判断的条件,当条件表达式的值为真时,执行循环;否则,退出循环。该语句结构的流程图如图6-4所示。,章节目录,上一页,下一页,说明如下: 布尔条件表达式是一个具有boolean值的条件表达式,为循环的条件。 作为循环体的语句序列可以是简单语句、复合语句和其他结构语句。 while循环的执行过程:首先计算条件表达式的值,如果为真(True),则执行后面的循环体,执行完后,再开始一个新的循环;如果为假(False),则终止循环,执行循环体后面的语句。,章节目录,上一页,下一页, 可以在循环体中的任何位置放置break语句来强制终止while循环随时跳出while

8、循环。break语句通常包含于if语句中。 可以在循环体中的任何位置放置continue语句,在整个循环体没有执行完就重新判断条件,以决定是否开始新的循环。continue语句通常包含于if语句中。,章节目录,上一页,下一页,图6-4 while程序流程图,6.2.2 while循环语句的使用 【例6-3】设有一张厚为x mm,面积足够大的纸,将它不断地对折。试问对折多少次后,其厚度可达珠穆朗玛峰的高度(8844.43 m)。 设对折后纸的厚度为h mm,计数器为n。在没有对折时,纸厚为x mm,每对折一次,其厚度是上一次的2倍,在未到达8844.43 m时,重复对折。在程序中,纸的厚度就是对

9、折后纸的厚度,所以用一个变量h。,章节目录,上一页,下一页,建立应用程序用户界面与设置对象属性,如图6-5所示。,章节目录,上一页,下一页,图6-5 用户界面及程序运行结果,章节目录,上一页,下一页,【计算】按钮的Click(单击)事件代码为: private void button1_Click(object sender, System.EventArgs e) int n=0; float h; h=float.Parse(textBox1.Text); while (h8844430) n = n + 1; h = 2 * h ; textBox2.Text = n.ToString(

10、); 程序运行结果如图6-5所示。,章节目录,上一页,下一页,6.3 dowhile循环 dowhile循环非常类似于while循环。一般情况下,可以相互转换使用。它们之间的差别在于while循环的测试条件在每一次循环开始时执行,而dowhile循环的测试条件在每一次循环体结束时进行判断。同样的,dowhile可以解决一些循环问题,但使用的频率较少。 6.3.1 dowhile的语法格式 dowhile语法的一般格式为: do 语句序列; while (布尔条件表达式),章节目录,上一页,下一页,6.3.2 dowhile的使用 【例6-4】使用dowhile语句实现1+2+3+100。 窗体

11、及控件的属性设计见【例6-1】。 【计算】按钮的Click(单击)事件代码为: private void button1_Click(object sender, System.EventArgs e) int sum; sum=0; int k=1;,章节目录,上一页,下一页,do sum=sum+k; k=k+1; while(k=100); label1.Text=“从1加到100值为“+sum.ToString(); / 将sum显式转换为字符串 ,章节目录,上一页,下一页,6.5 循环的嵌套 当一个循环(称为“外循环”)的循环语句序列内包含另一个循环(称为“内循环”),称为循环的嵌套

12、,这种语句结构称为多重循环结构。内循环中还以包含循环,形成多层循环(循环嵌套的层数理论上无限制)。三种循环(while循环、dowhile循环、for循环)可以互相嵌套。在多重循环中,需要注意的是循环语句所在循环的层数。如以下代码: int sum=0; for(int i=1;i=10;i=i+1) for(int k=1;k=i;k=k+1) sum=sum+k;,章节目录,上一页,下一页,【例6-6】编程实现九九乘法表。 分析:本例中实现每一个一位数i显示从1乘到i,对于i的取值要从取到9,所以可以使用两重循环实现,程序设计如图6-8所示。使用label1控件实现乘法表的显示。,章节目录

13、,上一页,下一页,图6-8 九九乘法表,本例的界面设计如图6-8右图,使用label1控件实现乘法表的显示。本例使用两重循环实现,其中外层循环实现乘法表中第二乘数i取值范围为1到9,内层循环在外层循环的基础上计算第一个乘数k的取值范围为1到i,其乘积以及表达式在label控件中显示。运行结果如图6-8左图所示。 【九九乘法表】按钮的Click(单击)事件代码为: private void button1_Click(object sender, System.EventArgs e) label1.Text=“; string s=“; int sum;,章节目录,上一页,下一页,for(in

14、t i=1;i10;i=i+1) s=“; for(int k=1;k=i;k=k+1) sum=k*i; s=s+k.ToString()+“+i.ToString()+“=“+sum.ToString()+“;“; label1.Text+=s+“n“; / 显示并换行 ,章节目录,上一页,下一页,6.4 跳转语句 使用跳转语句,可以使程序执行跳转到程序中其它部分。C#中提供四种转移语句:goto语句、break语句、continue语句、return语句。 1. goto语句 goto语句可以将程序控制直接转移给标签制定的语句。但由于goto语句改变了程序的正常流程,使得程序特别容易出错

15、,所以尽量不要用。而且,用goto语句实现的循环完全可以用循环语句实现,因此,goto语句很少使用。,章节目录,上一页,下一页,2. break语句 在第5章中介绍了break在switch中的用法,break语句也可以用于退出所在的最近循环,使用break语句时,将结束循环,执行后面的语句。break不能放在循环语句或switch语句后,否则发生错误。 3. continue语句 continue语句用于循环语句中,类似于break语句,但仅从当前的循环迭代中退出,然后执行下一次迭代循环。 【例6-10】使用计数器循环语句了解continue语句的使用,要求输出大于5的数,章节目录,上一页,

16、下一页,本例使用控制台程序实现。【计算】按钮的Click(单击)事件代码为: static void Main(string args) for(int i=1;i=10;i=i+1) if(i5) continue; Console.WriteLine(i); Console.ReadLine( ); ,章节目录,上一页,下一页,本程序的运行结果为 5 6 7 8 9 10 该例中当i5时通过continue退出本次循环,所以运行结果中不显示1、2、3、4数字。,章节目录,上一页,下一页,6.5 列表框和组合框 6.5.1 列表框(ListBox) ListBox控件为用户提供了选项的列表,用户可以从列表中进行选择输入。如果项目数目超过列表框可显示的数目,控件上将自动出现滚动条,它是一种规范输入的好工具。 1. 列表框的常用属性、方法和事件 2. 列表框应用实例 【例6-11】计算并输

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号