电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本
换一换
首页 金锄头文库 > 资源分类 > PPT文档下载
分享到微信 分享到微博 分享到QQ空间

C语言-5-C循环结构 PPT课件

  • 资源ID:165202993       资源大小:1.78MB        全文页数:41页
  • 资源格式: PPT        下载积分:15金贝
快捷下载 游客一键下载
账号登录下载
微信登录下载
三方登录下载: 微信开放平台登录   支付宝登录   QQ登录  
二维码
微信扫一扫登录
下载资源需要15金贝
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
1、金锄头文库是“C2C”交易模式,即卖家上传的文档直接由买家下载,本站只是中间服务平台,本站所有文档下载所得的收益全部归上传人(卖家)所有,作为网络服务商,若您的权利被侵害请及时联系右侧客服;
2、如你看到网页展示的文档有jinchutou.com水印,是因预览和防盗链等技术需要对部份页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有jinchutou.com水印标识,下载后原文更清晰;
3、所有的PPT和DOC文档都被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;下载前须认真查看,确认无误后再购买;
4、文档大部份都是可以预览的,金锄头文库作为内容存储提供商,无法对各卖家所售文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;
5、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据;
6、如果您还有什么不清楚的或需要我们协助,可以点击右侧栏的客服。
下载须知 | 常见问题汇总

C语言-5-C循环结构 PPT课件

问题的提出,程序设计: 求三个整数的和。 算法思想是引入三个整型变量a,b,c和一个和变量sum,表达式 sum=a+b+c表示三数之和; 求四个整数的和。 算法思想是引入四个整型变量a,b,c,d和一个和变量sum,表达式 sum=a+b+c+d表示三数之和; 若计算1到100的和,如何实现?,设想求1+2+100的方法?,结构化程序设计,循 环 结 构,C语言程序设计实现循环结构的语句: for循环 while循环 do-while循环,P113,for 循环语句,for(表达式1; 表达式2; 表达式3) 语句组 ,P118,循环体,初值,终值,增量,设置循环控制变量,给定初值,设定终值条件(循环条件)以及循环控制变量的变化规律,由循环结构语句for控制执行循环体的次数。 语句组实现:“重复的工作”。,for(表达式1; 表达式2; 表达式3) 循环体 ,Y,N,for 循环语句,退出循环,执行后继语句,#include main() int i,sum=0; for(i=1;i<=100;i+) sum=sum+i; printf(sum=%d,sum); ,作加时,和变量必须先赋初值。通常情况下赋 0 值。,for 循环语句,算法总结:求和(累加和),累加和的算法思想: sum=sum+a 和变量sum必须先赋值,通常情况下赋0值。也可视情况而定。 结构:循环结构,例.求200以内的奇数之和与偶数之和。,#include main() int i,sum1=0,sum2=0; for(i=1;i<=200;i+) if(i%2=0) sum1+=i; else sum2+=i; printf(%d %d,sum1,sum2); ,例 求n!=1*2*3* *n,算法:累乘(求积),f=f*n;,注意:作累乘时,积变量必须先赋初值,通常赋1值。,#include main( ) int i ,n; long f=1; scanf(%d,for( ; ; ),i=1,i<=n,i+,f=f*i;,注意: 作乘时,注意数的范围: 整型:-3276832767 若其值大于该范围,可修改数据类型为长整型。,printf( %d != %ld,n,f); ,算法总结:求积(累积),累积的算法思想: f=f*a 积变量f必须先赋值,通常情况下赋1值。也可视情况而定。 结构:循环结构,友情提醒:考虑数据的溢出。,P129.6.8: 有一分数序列:,求这个数列前20项之和。,#include main( ) int n ; float a=2,b=1,t,sum=0;,for( ; ; ),n=1,n<=20,n+, sum=sum+a/b; t=a; a=a+b; b=t; ,a:分子,b:分母 sum:和,printf(“ sum= %.2f”,sum); ,1、表达式1,2,3可以是任意表达式。 2、表达式间用“;”相隔。表达式1,2,3都可以省略,但表达式2省略时,会造成死循环。当某一表达式省略时,分号“;”不可省略。,for 循环语句,P121,(1)省略表达式1,但必须在for之前给循环控制变量赋初值。否则会导致死循环。 i=1; for ( ;i<=50 ;i+) sum=sum+i; ,for 循环语句,(2)省略表达式2,会导致死循环。在编写程序时一定要避免产生死循环。 for ( i=1; ;i+) sum=sum+i; ,for 循环语句,(3)省略表达式3,但必须在循环体内对循环控制变量重新赋值(增量),否则导致死循环。 for ( i=1;i<=50 ;) sum=sum+i; i+; ,for 循环语句,(4)同时省略表达式和表达式3,保证不产生死循环,须在循环体外对循环控制变量赋初值以及在循环体内对该变量重新赋值(增量)。 i=1; for (;i<=50 ;) sum=sum+i; i+; ,for 循环语句,while 循环语句,while(条件表达式) 语句组 ,求解条件表达式的值,值为非0(条件为真)时,执行循环体,之后继续求解表达式的值,当值为0(条件为假)时退出循环,执行其后继语句。,循环体,P114,真(值为非零),假(值为零),while的后继语句,#include main() int m,n,b=0; m=11; while(m!=0) n=m%2; m=m/2; b=b+n; printf(“%dn,b); ,3,while 循环语句,11,1,5,1,1,2,2,0,1,2,1,0,3,假,do_ while 循环语句,do 语句组 while(条件表达式);,循环体,P115,先执行循环体,然后求解条件表达式的值,若值为非0(条件为真),继续执行循环体,直至条件表达式的值为0(条件为假),退出循环,执行其后继语句。,真(值为非零),假(值为零),do-while的后继语句,do_ while 与while的区别,do 语句组 while(表达式);,while(表达式) 语句组 ,无分号,必须有分号,无论条件是否成立,循环必执行一次。,最少是一次都不执行。,表达式可以是任意表达式。但其值只有两种:0值或非0值。 若语句只一条时,才能省略 。,#include #include main() double pi, sum=0; int f=1,n=1; while( fabs(1.0/n)=1e-6) sum=sum+f*1/n; n+=2; f=-f; pi=4*sum; printf(pi=%lf,pi); ,P124 例6.6:用 公式 求 的近似值,直到某一项的绝对值小于10-6为止。,#include #include main() double pi, sum=0; int f=1,n=1; do sum=sum+f*1/n; n+=2; f=-f; while( fabs(1.0/n)=1e-6) ; pi=4*sum; printf(pi=%lf,pi); ,例:输入任意的正整数(一个不多于5位),求出它是几位数。,#include main( ) int i,n=0; long m; do printf(input m:n); scanf(%ld, ,若数超出范围,重新输入。,P112 5.7:输入任意的正整数(一个不多于5位),求出它是几位数;求它的逆序并输出。,#include main( ) int i,n=0; long m,k=0; do printf(input m:n); scanf(%ld, ,P129 6.1 :求两个正整数的最大公约数,#include main() int m,n,r,t; do scanf(%d%d, ,欧几里得的辗转相除: 1、用两数中的小数去除大数,得到余数; 2、若余数1不为零,则用余数1去除小数,得到余数2; 3、若余数2还不为零,再以此余数2去除余数1,这样辗转相除,直到余数是零为止。 4、在最后一次相除所用的余数,即最后一个不为零的余数,就是所求两数的最大公约数。,辅助控制语句 break,break语句 功能:在循环语句和switch语句中,终止并跳出循环体或switch结构 用法: break; 说明: break只能终止并跳出最近一层的结构 break只用于循环语句和switch语句,P122,辅助控制语句 continue,continue语句 功能:结束本次循环,跳过尚未执行的语句,进行下一次循环。 仅用于循环语句中。 用法: continue;,P123,例:阅读程序,写出程序的输出结果,#include main() int x,j=1; for(x=1;x10)break; if(x2!=0) x+=3; continue; x-=1; printf(x=%d,j=%dn,x,j); ,x=12,j=10,x j,1,for (x<50),1,if (x10),N,if (x%2!=0),Y,4,2,4,N,3,3,3,Y,6,4,6,N,5,5,5,Y,8,6,8,N,7,7,7,Y,10,8,10,N,9,9,9,Y,12,10,12,Y,#include main ( ) int i=0,j,k=19; do k-=3 ; if (k%5=0) i+ ; continue ; else if (k<5) break ; i+; while(i=k-1); printf(i=%d,k=%dn,i,k);,例、读下列程序,写出其运行结果。,i=6,k=4,P126 例6.8:判断数m是否素数(质数)。,判断数m能否被除1和本身之外的任何数整除,若不能则是素数,否则不是素数。,循环条件: 1)2 m-1; 2)2 sqrt(m); 3)2 m/2;,#include main() int m,i,k; scanf(%d, ,#include main( ) int i,a ; int flag=1; printf(Enter a Number :); scanf(%d, ,求素数,例:编程实现判断输入的数a是否为素数。当a为素数时,输出字符串YES,否则输出NO。 采用标识变量。 即在程序中,用变量flag来标志a是否是素数,若flag的值为“真”表示是素数,否则不是素数。,if(a%i=0) flag=0; else i+;,flag flag!=0 flag=1,循环嵌套-多重循环,一个循环体内又包含另一个完整的循环结构,称为循环的嵌套。内嵌的循环中还可以嵌套循环,称为多重循环。,P121,Y,Y,N,N,for(表达式1;表达式2;表达式3) . . for(表达式1;表达式2;表达式3) 语句组; . . ,循环嵌套-多重循环,一个循环体内又包含另一个完整的循环结构,称为循环的嵌套。内嵌的循环中还可以嵌套循环,称为多重循环。,#include main() int i,j,sum=0; for(i=1; i<=2; i+) for(j=1; j<=2; j+) sum+=i+j; printf(sum=%dn,sum); ,sum=12,循环嵌套-多重循环,#include #define N 4 main( ) int i,j; for(i=1;i<=N;i+) for(j=1;j<i;j+) printf( ); printf(*); printf(n); ,* * * *,#include main() int i,j,k; for(i=1;i=1;i-) for(j=1;j<14-i;j+) printf( ); for(k=1;k<=2*i-1;k+) printf(*); printf(n); ,P130 6.14,#include main( ) int i,j,ok; for(j=101;j<200;j+) i=2; ok=1; while( ok ,P127 例6.9 求100200间的所有素数,#include main() int j,i,k; for(j=101;jk) printf(%4d,j); ,#include stdio.h main() int j, i, sum=0; for(i=1;i<=1000;i+) sum=0; for(j=1;j<i;j+) if(i%j=0) sum=su

注意事项

本文(C语言-5-C循环结构 PPT课件)为本站会员(Lesl****ang)主动上传,金锄头文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即阅读金锄头文库的“版权提示”【网址:https://www.jinchutou.com/h-59.html】,按提示上传提交保证函及证明材料,经审查核实后我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.