c语言课件第5章 循环结构程序设计.ppt
《c语言课件第5章 循环结构程序设计.ppt》由会员分享,可在线阅读,更多相关《c语言课件第5章 循环结构程序设计.ppt(61页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第五章第五章 循环结构程序设计循环结构程序设计5.1 while5.1 while语句语句5.2 do-while5.2 do-while语句语句5.3 for5.3 for语句语句5.4 5.4 breakbreak、continue语句语句5.5.5 5 循环的嵌套循环的嵌套 5.5.6 6 复合结构程序设计举例复合结构程序设计举例1在在C语言中可以用以下语句来实现循环:语言中可以用以下语句来实现循环:1.用用while语句;语句;2.用用do-while语句;语句;3.用用for语句。语句。循环循环:就是在给定的条件成立时反复执行某一就是在给定的条件成立时反复执行某一程序段,被反复执行的
2、程序段称为循环体。程序段,被反复执行的程序段称为循环体。25.1 5.1 whilewhile语句语句真真(非零非零)表达式表达式 循环体循环体假假(零零)1、while 语句的形式语句的形式:while(表达式)表达式)循环体;循环体;2、while 语句语句 常称常称为为“当型当型”循环语句。循环语句。while3例 用while循环求#include main()int i,sum=0;i=1;while(i=100)sum=sum+i;i+;printf(%d,sum);循环初值循环终值循环变量增值循环条件循环体4例 显示110的平方#include main()int i=1;whi
3、le(i=10)printf(%d*%d=%dn,i,i,i*i);i+;运行结果:1*1=12*2=43*3=94*4=165*5=256*6=367*7=498*8=649*9=8110*10=10053、说明、说明:先判断表达式,后执行语句。循环体有可先判断表达式,后执行语句。循环体有可能一次也不执行能一次也不执行表达式同表达式同ifif语句后的表达式一样,可以是语句后的表达式一样,可以是任何类型的表达式。任何类型的表达式。循环体多于一句时,用一对循环体多于一句时,用一对 括起括起。下列情况,退出下列情况,退出whilewhile循环循环 条件表达式不成立(为零)条件表达式不成立(为零)
4、循环体内遇循环体内遇breakbreak无限循环无限循环:while(1):while(1)循环体循环体6例:分析下列程序段的循环次数例:分析下列程序段的循环次数i=1;while(i=100)putchar(*);i+;7#include void main()int x;scanf(“%d”,&x);【例】输入一系列整数,判断其正负号,当输【例】输入一系列整数,判断其正负号,当输入入0时,结束循环。时,结束循环。输入数据,为第输入数据,为第一次判断做准备一次判断做准备while(x!=0)判断是否结束判断是否结束 if(x0)printf(+);else printf(-);scanf(“
5、%d”,&x);判断正负号判断正负号 8#include void main()char ch;int num=0;ch=getchar();【例】【例】统计从键盘输入的一行字符的个数(以统计从键盘输入的一行字符的个数(以回车换行键作为输入结束标记)。回车换行键作为输入结束标记)。while(ch!=n)判断是否输入结束判断是否输入结束 num+;ch=getchar();printf(num=%dn,num);9注意注意表达式在判断前,必须要有明确的值。表达式在判断前,必须要有明确的值。循环体中一般有改变条件表达式的语句。循环体中一般有改变条件表达式的语句。while(while(表达式表达
6、式)后面没有分号。后面没有分号。105.2 5.2 do-whiledo-while语句语句1、do-while的形式:的形式:do 循环体;循环体;while(表达式);表达式);2、do-while语句语句 常称常称为为“直到型直到型”循环语句。循环语句。真真(非零非零)表达式表达式 循环体循环体假假(零零)do11例 用dowhile循环求#include main()int i,sum=0;i=1;do sum+=i;i+;while(i=100);printf(%d,sum);12例 while和dowhile比较#include main()int i,sum=0;scanf(%d
7、,&i);do sum+=i;i+;while(i=10);printf(%d,sum);main()int i,sum=0;scanf(%d,&i);while(i=10)sum+=i;i+;printf(%d,sum);133、说明、说明:先先执行执行语句语句,后判断,后判断表达式表达式。第一次条件为真时,第一次条件为真时,while,do-while等价;等价;第一次条件为假时,二者不同。第一次条件为假时,二者不同。14【例例】口口令令密密码码校校验验,假假设设预预设设口口令令为为A,A,密密码码为为a,a,如如果果口口令令密密码码不不一一致致,则则需需要要重重新新输输入入,直直到到与与
8、预预设设口口令密码一致。令密码一致。#include void main()char c1,c2;do c1=getchar();c2=getchar();while(c1!=A&c2!=a);printf(“Pass!n);15注意注意在在if、while语句中,表达式后面都没有分语句中,表达式后面都没有分号,而在号,而在do-while语句的表达式后面则必语句的表达式后面则必须加分号。须加分号。do-while和和while语句相互替换时,要注意语句相互替换时,要注意修改循环控制条件修改循环控制条件。165.3 5.3 forfor语句语句1、for的形式:的形式:for(初始表达式初始表
9、达式1;条件表达式;条件表达式2;循环表达式;循环表达式3)循环体循环体;表达式表达式1:用于循环开始前为循环变量设置初值。:用于循环开始前为循环变量设置初值。表达式表达式2:控制循环执行的条件,决定循环次数。:控制循环执行的条件,决定循环次数。表达式表达式3:循环控制变量修改表达式。:循环控制变量修改表达式。循环体语句:循环体语句:被重复执行的语句。被重复执行的语句。17表达式表达式3计算表达式计算表达式1循环体循环体判断表达式判断表达式2零零非零非零for的下一条语句的下一条语句2、执行过程、执行过程18例如:例如:它相当于以下语句:它相当于以下语句:i=1;while(i=100)sum
10、=sum+i;i+;printf(%d,sum);表达式表达式1 1;while(表达式表达式2)表达式表达式3 3;例 用for循环求#include main()int i,sum=0;for(i=1;i=100;i+)sum+=i;printf(%d,sum);193、说明说明三个表达式都可以是逗号表达式。三个表达式都可以是逗号表达式。三个表达式都是任选项,都可以省略,但要注三个表达式都是任选项,都可以省略,但要注意省略表达式后,分号间隔符不能省略。意省略表达式后,分号间隔符不能省略。20例:#include main()int i=0;for(i=0;i10;i+)putchar(a+
11、i);运行结果:abcdefghij例:#include main()int i=0;for(;i10;i+)putchar(a+i);例:#include main()int i=0;for(;i10;)putchar(a+(i+);例:#include main()int i=0;for(;i10;putchar(a+i),i+);21 1、for语句中表达式省略的形式语句中表达式省略的形式(1)for语语句句一一般般形形式式中中的的“表表达达式式1”可可以以省省略;略;如:如:sum=0;i=1;for(;i100)break;sum=sum+i;231、for语句中表达式省略的形式语句
12、中表达式省略的形式(3)表达式)表达式3也可以省略,但此时保证循环也可以省略,但此时保证循环能正常结束如:能正常结束如:for(sum=0,i=1;i=100;)sum=sum+i;i+;24 (4)可以省略表达式可以省略表达式1和和表达式表达式3,只有表达式,只有表达式2,如:,如:i=1;sum=0;for(;i=100;)sum=sum+i;i+;1、for语句中表达式省略的形式语句中表达式省略的形式i=1;sum=0;while(i100)break;sum=sum+i;i+;相当于相当于26(6)循环体为空语句)循环体为空语句 对对for语句,循环体为空语句的一般形式为语句,循环体为
13、空语句的一般形式为:for(表达式表达式1;表达式;表达式2;表达式;表达式3);如:如:for(sum=0,i=1;i=100;sum+=i,i+);1、for语句中表达式省略的形式语句中表达式省略的形式 要要在在显显示示器器上上复复制制输输入入的的字字符符,输输入入的的字字符符为为.时时,结束循环。结束循环。输入输入abcdefg.输出输出abcdefg.while(putchar(getchar()!=.);27(1)在进入累加前先给累加器赋初值(一般为)在进入累加前先给累加器赋初值(一般为0););(2)用循环语句实现累加;)用循环语句实现累加;for(循环变量赋初值;循环条件;循环变
14、量改变规律)循环变量赋初值;循环条件;循环变量改变规律)(3)循环体语句的设计。)循环体语句的设计。累加器当前值累加器当前值=累加器原值累加器原值+循环变量当前值循环变量当前值;典型例题分析典型例题分析【例】【例】求累加和求累加和1+2+3+10001+2+3+1000基本方法基本方法:属于属于“累加器累加器”类型问题。类型问题。28累加器赋初值累加器赋初值参考程序:参考程序:void main()long int k,s;s=0;for(k=1;k=1000;k+)s=s+k;printf(s=%ld,s);累加累加求偶数和求偶数和2+4+6+100思考思考29(1)给累乘器赋初值,一般为)
15、给累乘器赋初值,一般为1;(2)用循环语句实现累乘;)用循环语句实现累乘;for(循环变量赋初值;循环条件;循环变量改变规律)循环变量赋初值;循环条件;循环变量改变规律)(3)循环体设计。)循环体设计。累乘器当前值累乘器当前值=累乘器原值累乘器原值*循环变量当前值;循环变量当前值;例例:求累乘积。求累乘积。如:如:123.100基本方法基本方法:属于属于“累乘器累乘器”类型问题。类型问题。30累乘器赋初值累乘器赋初值求求n!=1 2 3 n参考程序:参考程序:void main()double s=1;int k;for(k=1;k=100;k+)s=s*k;printf(s=%lf,s);累
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- c语言课件第5章 循环结构程序设计 语言 课件 循环 结构 程序设计
限制150内