第章循环控制.pptx
上传人:王子****青蛙 上传时间:2024-09-09 格式:PPTX 页数:32 大小:212KB 金币:6 举报 版权申诉
预览加载中,请您耐心等待几秒...

第章循环控制.pptx

第章循环控制.pptx

预览

免费试读已结束,剩余 22 页请下载文档后查看

6 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

6.1goto语句一般说来求和分为两种情况:数据有规律与无规律。voidmain(){intsum=0,i=0;L:sum=sum+i;i++;if(i<=100)gotoL;printf("%d",sum);}C语言一般采用三种形式循环1.while语句2.do…while语句3.for语句1.while语句格式:下一语句while语句:先判断,后执行,最小循环次数=0。1.循环体中至少应有一条能改变表达式值的语句,使循环进行若干次后,表达式值为假结束循环,否则将造成无限循环。#include<stdio.h>voidmain(){charch;intnum=0,chn=0;while((ch=getchar())!=’\n’){if(ch>=‘0‘&&ch<=‘9‘)num++;elsechn++;}printf(“num=%d,chn=%d\n”,num,chn);}从键盘输入一个数,将其数字按逆序输出。格式:赋初值用for语句求累加和:for语句中的三个表达式均可部分或全部省略,但须保留分号;见P.111。条件表达式是任意合法的C表达式,一般不可省略,否则为无限循环。循环表达式亦可省略,但在循环体中必须有语句修改循环变量,能正常结束循环;赋值表达式可移至for语句之前,不影响循环执行。voidmain(){intI,j=0;for(I=1;I<100;I++){if(I%2||I%3){printf(“%4d”,i);if(++j%5==0)printf(“\n”);}}}1、定义变量:n=1(分母),s=1.0(分子),pi=1.0(和),t(分式)。2、n+=2;s=-s;t=s/n;pi+=t;#include<math.h>voidmain(){intn=1;floatt,s=1.0,pi=1.0;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);}与if语句相同,当循环体中又包含了另一个完整的循环语句时–––循环嵌套。输出1*9的乘法表。输出9*9的乘法表。a=1;for(a=1;a<=9;a++)for(b=1;b<=9;b++){for(b=1;b<=9;b++)printf(“%d”,a*b);printf(“%d”,a*b);printf(“\n”);}例程6-6:求一个班某门课的平均分(30人)。求五个班某门课的平均分,30人/班。例程6-7:求累乘n!求1!+2!+3!+4!+5!+6!例程6-8:百鸡问题。有100元钱,想买100只鸡,其中公鸡5元/只,母鸡3元/只,小鸡3只/元,求:公鸡、母鸡、小鸡各买多少只。解:设公鸡为x只、母鸡为y只、小鸡为z只。则有x+y+z=1005x+3y+z/3=100根据题意x:1–20;y:1-33z=3*(100-5*x-3*y)voidmain(){intx,y,z,n=0;for(x=1;x<=20;x++)for(y=1;y<=33;y++){z=3*(100-5*x-3*y);if(x+y+z==100){n++;printf(“%d,%d,%d”,x,y,z);}}printf(“n=%d”,n);}例程6-9:出5道两位数的加法题,做对1题得10分,输出得分及做错的题数。.pi=3.14159;for(r=1;r<=100;r++){area=pirr;if(area>100)break;}printf("%f",area);continune语句:用来结束本次循环,在while,do-while中,使流程直接跳到循环控制条件的测试部分,然后决定循环是否继续;在for中先执行表达式3的求值,再执行表达式2的测试,然后决定循环是否继续。例程6-11:打印100~200中不能被3整除的数。