第5章 循环控制结构程序设计PPT课件下载推荐.ppt
- 文档编号:15040961
- 上传时间:2022-10-27
- 格式:PPT
- 页数:36
- 大小:1.85MB
第5章 循环控制结构程序设计PPT课件下载推荐.ppt
《第5章 循环控制结构程序设计PPT课件下载推荐.ppt》由会员分享,可在线阅读,更多相关《第5章 循环控制结构程序设计PPT课件下载推荐.ppt(36页珍藏版)》请在冰豆网上搜索。
如果表达式的值一开始为“假”,则循环体一次也不执行。
(2)while语句中的表达式一般是关系表达式或逻辑表达式,只要表达式的值为真(非0)即可继续循环。
(3)为使循环能够正确开始运行,需要对循环控制变量初始化。
(4)循环体中,如果包含一个以上的语句,则应用花括号括起来,构成复合语句,否则while语句的范围只到while后面第1个分号处。
(5)循环体内中应有使循环趋向于结束的语句。
5.1while语句2022/10/276C语言程序设计基础教程【例5-2】从键盘输入30个学生的成绩,对其进行处理;
如果成绩及格,则输出“Passed”,否则输出“Failed”。
#includestdio.hmain()intn=1;
floatscore;
while(n=60.0)printf(Passedn);
elseprintf(Failedn);
n+;
5.1while语句2022/10/278C语言程序设计基础教程dowhile语句可以用来实现“直到型”循环结构。
do语句语句while(表达式);
(表达式);
2)执行过程这个循环与while循环的区别在于,它先执行后判断,因此,do-while循环至少要执行一次循环体。
而while循环是先判断后执行,如果条件不满足,则循环体语句一次也不执行。
5.2dowhile语句2022/10/279C语言程序设计基础教程【例5-3】用do-while语句求1100的累计和。
dosum=sum+i;
while(i=100);
50505.2dowhile语句2022/10/2710C语言程序设计基础教程使用do-while语句应注意以下几点:
(1)do是C语言的关键字,必须与while联合使用。
(2)在if语句、while语句中,表达式后面都不能加分号,而在do-while语句的表达式后面必须加分号,它表示do-while语句的结束,否则将产生语法错误。
(3)while后面一对圆括号中的表达式,可以是C语言中任意合法的表达式。
由它控制循环是否执行。
(4)和while语句一样,在使用do-while语句时,不要忘记初始化循环控制变量,否则执行的结果将是不可预知的。
(5)要在do-while语句的某处(表达式或循环体内)改变循环控制变量的值,否则极易构成死循环。
(6)按照语法规则,在do和while之间的循环体只能是一条可执行语句。
若循环体内需要多个语句,应该用花括号括起来,组成复合语句。
5.2dowhile语句2022/10/2711C语言程序设计基础教程【例5-4】将输入的一串字符显示在屏幕上,遇到空格时停止。
#includestdio.hmain()charc;
printf(nPleaseinputastring:
);
doc=getchar();
putchar(c);
while(c!
=);
Pleaseinputastring:
HomeworkintheschoolHomework5.2dowhile语句2022/10/2712C语言程序设计基础教程【例5-5】while语句和do-while语句的比较。
main()ints=0,n;
scanf(%d,&
n);
while(n=10)s=s+n;
printf(%d,s);
dos=s+n;
while(n10时,两者结果不同。
这是因为此时对while循环来说,一次也不执行循环体(表达式“i=100”为假),而对do-while循环语句来说,则要执行一次循环体。
可以得到结论:
当while后面的表达式的第1次的值为“真”时,两种循环得到的结果相同,否则,两者结果不相同(指两者具有相同的循环体的情况)。
5.2dowhile语句2022/10/2714C语言程序设计基础教程for语句是循环控制结构中使用最广泛的一种循环控制语句,特别适合用于已知循环次数的情况。
for(表达式(表达式1;
表达式;
表达式2;
表达式3)语句)语句2)执行过程5.3for语句2022/10/2715C语言程序设计基础教程【例5-6】用for语句求1100的累计和。
#includestdio.hmain()ints=0,n=1;
for(n=1;
n=100;
n+)s=s+n;
printf(s=%dn,s);
50505.3for语句2022/10/2716C语言程序设计基础教程使用for语句应注意以下几点:
(1)for循环中的“表达式1(循环变量赋初值)”、“表达式2(循环条件)”和“表达式3(循环变量增量)”都是选择项,即可以缺少,但“;
”不能缺少。
(2)省略了“表达式1(循环变量赋初值)”,表示不对循环控制变量赋初值。
(3)省略了“表达式2(循环条件)”,则不做其他处理时便成为死循环。
(4)省略了“表达式3(循环变量增量)”,则不对循环控制变量进行操作,这时可在循环体中加入修改循环控制变量的语句。
5.3for语句2022/10/2717C语言程序设计基础教程使用for语句应注意以下几点:
(5)省略了“表达式1(循环变量赋初值)”和“表达式3(循环变量增量)”。
(6)3个表达式都可以省略。
(7)表达式1可以是设置循环变量的初值的赋值表达式,也可以是其他表达式。
(8)表达式1和表达式3可以是简单表达式,也可以是逗号表达式。
(9)表达式2一般是关系表达式或逻辑表达式,但也可是数值表达式或字符表达式,只要其值非零,就执行循环体。
5.3for语句2022/10/2718C语言程序设计基础教程【例5-7】输出1001000之间同时能被4和6同时整除的数及其和。
#includestdio.hmain()floats=0;
inti;
for(i=100;
i=1000;
i+)if(i%4=0&
i%6=0)s=s+i;
printf(%5d,i);
printf(s=%fn,s);
5.3for语句2022/10/2719C语言程序设计基础教程【例5-8】在3100之间所有3的倍数中,找出个位数为2的数。
#includestdio.hmain()inti=0;
for(i=3;
i=100;
i+)if(i%3=0&
i%10=2)printf(%4d,i);
printf(n);
5.3for语句程序运行结果如下:
1242722022/10/2720C语言程序设计基础教程【例5-9】一个球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下。
求它在第10次落地时,共经过多少米?
第10次反弹多高?
#includestdio.hmain()floatsn=100.0,hn=sn/2;
intn;
for(n=2;
n=10;
n+)5.3for语句2022/10/2721C语言程序设计基础教程sn=sn+2*hn;
hn=hn/2;
printf(thetotalofroadis%fn,sn);
printf(thetenthis%fmetern,hn);
thetotalofroadis299.609375thetenthis0.097656meter2022/10/2722C语言程序设计基础教程5.4循环嵌套一个循环的循环体中有另一个循环称为循环嵌套。
这种嵌套过程可以有很多重。
一个循环外面仅包围一层循环称为二重循环;
一个循环外面包围两层循环称为三重循环;
一个循环外面包围多层循环称为多重循环。
循环嵌套的层数理论上无限制。
2022/10/2723C语言程序设计基础教程在使用循环嵌套时应注意以下几点:
(1)在嵌套的各层循环中,应使用复合语句(即用一对花括号将循环体语句括起来),以保证逻辑上的正确性;
(2)内层和外层循环控制变量不应同名,以免造成混乱;
(3)嵌套循环最好采用右缩进格式书写,以保证层次的清晰性;
(4)循环嵌套不能交叉,即在一个循环体内必须完整地包含另一个循环。
循环嵌套执行时,先由外层循环进入内层循环,并在内层循环终止之后接着执行外层循环,再由外层循环进入内层循环。
当外层循环全部终止时,程序结束。
5.4循环嵌套2022/10/2724C语言程序设计基础教程【例5-11】打印九九乘法口诀表。
#includestdio.hmain()inti,j;
for(i=1;
i=9;
i+)for(j=1;
j=i;
j+)printf(%d*%d=%-3d,j,i,i*j);
1*1=11*2=22*2=41*3=32*3=63*3=91*4=42*4=83*4=124*4=165.4循环嵌套2022/10/2725C语言程序设计基础教程5.5几种循环的比较几种循环的比较如下:
(1)3种循环都可以用来处理同一个问题,一般可以互相代替。
(2)while和do-while循环,循环体中应包括使循环趋于结束的语句。
for语句功能最强。
(3)用while和do-while循环时,循环变量初始化的操作应在while和do-while语句之前完成,而for语句可以在表达式1中实现循环变量的初始化。
(4)while循环、do-while循环和for循环,可以用break语句跳出循环,用continue语句结束本次循环(break语句和continue语句见5.6节)。
2022/10/2726C语言程序设计基础教程5.6break语句和continue语句5.6.1break语句当break语句用于while、do-while、for循环语句中时,可使程序终止循环而执行循环后面的语句。
if(表达式)(表达式)break;
2)执行过程:
while(表达式(表达式1)if(表达式(表达式2)break;
2022/10/2727C语言程序设计基础教程【例5-14】读入5个正整数并且显示它们。
当程序读入的数据为负数时,程序立即终止。
#includestdio.hmain()inti,n;
i=5;
i+)printf(pleaseentern:
if(n0)break;
printf(n=%dn,n);
printf(Programisover!
5.6break语句和continue语句程序运行结果如下:
pleaseentern:
10n=10Pleaseentern:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第5章 循环控制结构程序设计 循环 控制 结构 程序设计