c语言教案第9讲.ppt

c语言教案第9讲.ppt

ID:57672131

大小:243.00 KB

页数:22页

时间:2020-08-31

c语言教案第9讲.ppt_第1页
c语言教案第9讲.ppt_第2页
c语言教案第9讲.ppt_第3页
c语言教案第9讲.ppt_第4页
c语言教案第9讲.ppt_第5页
资源描述:

《c语言教案第9讲.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第九讲循环嵌套教学目的与要求:了解三种循环语句的特点掌握循环的嵌套教学内容提要:1.三种循环语句2.循环语句的嵌套教学重点:循环语句的嵌套教学难点:循环语句的嵌套教学进度:P124~P133教学过程:1.三种循环语句的比较(2)do—while语句是后测试终止条件的循环语句,循环体至少执行一次。(3)while和dowhile循环,只在while后面指定循环条件,在循环体中应包含使循环趋于结束的语句(如i++,或i=i+1等)。for循环可以在表达式3中包含使循环趋于结束的操作,甚至可以将循环体中的操作全部放到表达式3中。因此for语

2、句的功能更强,凡用while循环能完成的,用for循环都能实现。⑴while语句和for语句是属于先测试终止条件的循环语句,故循环体有可能一次也不执行。(4)用while和dowhile循环时,循环变量初始化的操作应在while和dowhile语句之前完成。而for语句可以在表达式1中实现循环变量的初始化。(5)如果循环次数可以在进入循环语句之前确定,使用for语句较好;在循环次数难以确定时使用while和do—while语句较好。例1用π/4≈1-1/3+1/5-1/7+…公式求π的近似值,直到最后一项的绝对值小于10-6为止。用

3、NS结构化流程图表示算法(见图1)。图1程序如下:#includemain(){ints;floatn,t,Pi;t=1;Pi=0;n=1.0;S=1;while((fabs(t))>=1e-6){Pi=Pi+t;n=n+2;s=-s;t=s/n;}Pi=Pi*4;printf("Pi=%10.6f\n",Pi);}运行结果为:Pi=3.141594例2有一对兔子,出生后第3个月起每个月都生一对兔子,小兔子长到第3个月后每个月又生一对兔子,假设所有兔子不死,前40个月每个月的兔子总数。图2即:f1=1(n=1)f2=1

4、(n=2)fn=fn-1+fn-2(n≥3)解此题的算法如图2所示。main(){longintf1,f2;inti;f1=1;f2=1;for(i=1;i<=20;i++){printf("%12ld%12ld",f1,f2);if(i%2==0)printf("\n");f1=f1+f2;f2=f2+f1;}}运行结果为:11235813213455891442333776109871597258441816765109461771128657463687502512139319641831781151422983204013462

5、69217830935245785702287922746514930352241578173908816963245986102334155在循环体语句中又包含有另一个完整的循环结构的形式,称为循环的嵌套。如果内循环体中又有嵌套的循环语句,则构成多重循环。2、循环语句的嵌套嵌套在循环体内的循环体称为内循环,外面的循环称为外循环。while、do-while、for三种循环都可以互相嵌套。循环语句之间的关系for(...){...for(...){...}...}内循环外循环for(....){...}for(...){...}并列循环

6、嵌套循环交叉循环for(....){...for(...){...}}错误例如,下面几种都是合法的形式:(1)while(){…while(){…}…}(3)for(;;){…for(;;){…}…}(2)do{…do{…}while();…}while();(4)while(){…do{…}while();…}(9)for(;;){…while(){}…}(7)do{…for(;;){…}…}while();(8)for(;;){…do{…}while();…}(6)do{…while(){}…}while();(5)while(){

7、…for(;;){…}…}真真外循环初始条件外循环循环体内循环体外循环条件假内循环条件假外循环循环体内后续语句循环结束二重循环嵌套结构执行流程例3:输出图形:****************编程分析:采用双重循环,一行一行输出。每一行输出步骤:一般3步。1)光标定位3)每输完一行光标换行()2)输出图形。例如本题:共4行,若行号用k表示,则每一行有2*k-1个*号。#include"stdio.h"voidmain(){intk1,k2;for(k1=1;k1<=4;k1++){putchar(‘t’);for(k2=1;k2<=

8、4-k1;k2++)putchar(‘’);for(k2=1;k2<=k1*2-1;k2++)putchar(‘*’);putchar(‘’);}}定位(还可以用空格的方法)输出例4、输出下面的数字金字

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。