《第5章 C语言程序设计的循环结构.ppt》由会员分享,可在线阅读,更多相关《第5章 C语言程序设计的循环结构.ppt(23页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1第第5 5章章 C语言程序设计的循环结构语言程序设计的循环结构 2第第5 5章章 C C语言程序设计的循环结构语言程序设计的循环结构 n5.1 什么是循环结构 n5.2 如何使用while循环 n5.3 如何使用do-while循环 n5.4 如何使用for循环 n5.5 实现多重循环的嵌套 n5.6 如何选择循环结构 n5.7 打破循环的跳转语句 n5.8 循环结构程序设计实例 n5.9 小结 35.1 什么是循环结构n它和前面章节中讲到的顺序结构、选择结构是构成各种复杂程序的基本单元。循环结构的特点是:在给定条件成立时,反复执行某程序段,在给定条件不成立时,循环停止。45.2 如何使用w
2、hile循环n5.2.1 while循环的基本语法n5.2.2 while循环的使用实例55.2.1 while循环的基本语法nwhile循环语句用来实现“当型”循环结构。while循环的一般格式如下所示:while()65.2.2 while循环的使用实例n【例5-1】统计字符串中各种字符的个数。n【例5-2】计算n的阶乘。75.3 如何使用do-while循环n5.3.1 do-while循环的基本语法n5.3.2 do-while循环的使用实例85.3.1 do-while循环的基本语法ndo-while循环语句用来实现“直到型”循环结构。do-while循环语句由do、while关键字
3、以及循环体组成。一般格式如下所示:dowhile()95.3.2 do-while循环的使用实例 n【例5-3】利用do-while循环结构猜“神秘数字”。n【例5-4】通过do-while循环结构,计算数字1到n之和。105.4 如何使用for循环n5.4.1 for循环的基本语法n5.4.2 使用for循环时应该注意什么n5.4.3 for循环使用实例115.4.1 for循环的基本语法nfor循环语句用来实现“当型”循环结构。for循环结构在循环开始的时候就已经知道循环的次数。循环执行的次数由for关键字和()中的范围边界安排决定,for循环的一般格式如下所示:for(;)125.4.2
4、 使用for循环时应该注意什么n(1)for语句中可以省略,但是其后的分号不能省略。n(2)for语句如果省略,循环会无休止地进行下去。n(3)一般是关系表达式或者逻辑表达式,也可以是数值表达式或字符表达式,只要其值非0,就执行循环体。135.4.3 for循环使用实例n【例5-5】对正整数分解出质因数。n【例5-6】判断一个整数是否为素数。145.5 实现多重循环的嵌套n5.5.1 如何实现循环嵌套n5.5.2 循环嵌套使用实例155.5.1 如何实现循环嵌套n循环嵌套的工作原理是:首先外循环的第一轮触发内循环,然后内循环将一直执行到结束为止。然后,外循环的第二轮再次触发内循环,此过程不断重
5、复直至外循环结束。n(1)while、for、do-while自身嵌套。n(2)while、for、do-while互相嵌套。165.5.2 循环嵌套使用实例n【例5-7】输出101200之间的所有素数。n【例5-8】打印“乘法九九表”,通过for语句嵌套for语句来实现。175.6 如何选择循环结构n(1)while和do-while循环,只在while后面指定循环条件,在循环体中应包含使循环趋于结束的语句(如i+,或i=i+1等)。而for循环可以在中包含使循环趋于结束的操作,甚至可以将循环体中的操作全部放到中。n(2)用while和do-while循环时,循环变量初始化的操作应在whil
6、e和do-while语句之前完成。而for语句可以在中实现循环变量的初始化。n(3)for、while属“当型”循环,先判断,后执行循环体。因此当条件一开始就不成立时,循环体就一次也不执行。这两种循环可以互相取代。而dowhile循环属“直到型”循环,先执行循环体,后判断。因此无论条件是否成立,循环体至少要执行一次。n(4)一般的循环操作用for语句和while语句、do-while语句都可以实现。如果循环操作知道共执行多少次,或开始和结束条件都很明确时,用for语句比较方便。如果循环操作的执行次数不明确,但结束条件很明确时,用while语句和do-while语句比较方便。n【例5-9】、【例
7、5-10】、【例5-11】来说明for、while、do-while这3种循环的不同,这3段代码都是实现1到100之和的例子。185.7 打破循环的跳转语句n5.7.1 break跳转语句n5.7.2 continue跳转语句n5.7.3 go to跳转语句195.7.1 break跳转语句n在前面的章节中已经介绍过使用break语句可以跳出switch选择结构,继续执行选择结构后的一个语句。实际上,break语句还可以用来从循环体内跳出循环,从而提前结束循环。break语句的作用是终止最近的while、do-while和for语句,程序的执行权被传递给紧接着被终止循环之后的语句。n【例5-1
8、2】通过for循环计算圆面积。当圆面积大于100的时候,提前结束for循环。205.7.2 continue跳转语句ncontinue语句被称为继续语句,它类似于break语句,但不是退出循环,而是跳过本次循环的循环体下面未执行的语句,接着执行循环下一次迭代。n【例5-13】输出100到200之间所有的偶数,如果遇到奇数,使用continue语句跳过输出数值的语句,直接进行下次循环。215.7.3 go to跳转语句ngoto语句被称为无条件转移语句。它提供了函数内部的无条件分支,从goto语句跳转到同一函数内部的某个位置的一个标号语句。goto语句可以从循环体内跳出循环,尤其在多层循环中,使
9、用goto语句可以跳到任意一层循环体内。n【例5-14】使用goto语句统计从键盘输入一行字符的个数。225.8 循环结构程序设计实例n【例5-15】计算1-1/2+1/3+-1/n-1+1/n的结果。n【例5-16】求1+2+3+nm中最大的n值,并求和。n【例5-17】是一个按照规律翻译密码的例子。程序描述:翻译密码的规律是将每一个字母变成它后面的字母,如将A变成B,Z变成A,非字母字符不变,!作为电文结束标志。例如,有一电文“right”,翻译成“sjhiu”。n【例5-18】花100块钱买100斤蔬菜。程序描述:西红柿每斤5元,黄瓜每斤3元,白菜3斤一元,问100块钱买100斤蔬菜有几种解法。235.9 小结n循环结构是C语言程序设计中一种非常重要的编程结构,用于让计算机反复执行,完成大量类同的计算。主要包括while结构、do-while结构、for结构和goto语句实现的循环结构,这4种结构可以嵌套使用。本章主要讲述了这4种循环结构的语法和使用,并对这4种循环结构进行了对比。nbreak语句和continue语句,分别用来提前结束循环和跳过本次循环体之后的执行语句。
限制150内