06-07 循环、数组.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
06-07 循环、数组

第四章 循环结构 循环语句 问题: 一、while语句 三、do-while语句 do 语句 while(表达式); while和do-while的比较 #include math.h main() {long n=1; int flag=1; float pi,item,sum=0; item=flag*1.0/n; do {sum+=item; /*将当前项累加到sum中*/ n+=2; /*产生下一个当前项的分母*/ flag=-flag; /*改变当前项的符号*/ item=flag*1.0/n;/*求当前项*/ }while (fabs(item)=1e-5);/*循环结束条件*/ pi=4*sum; printf(pi=%f\n,pi); } 运行结果如下: pi=3.141576 二、for语句 while 和 for while 和 for break语句 作用:1.跳出switch语句 2. 跳出当层循环 for(i=0;i5;i++) { c=getchar(); if(c == ) break; putchar(c); } continue语句 功能:跳过continue后面的语句,继续下一次循环 例:输入m,判断m是否为素数(质数) 分析:除了1和m,不能被其他数整除 m %2 %3 %4 %5 ……%(m-1) 循环嵌套 例:输出100~200间所有素数 循环嵌套均是外循环嵌套内循环 绝对不允许循环体交叉 break只能跳出当层循环 输出以下图形 13个空格 例:有一分数序列:2/1,3/2,5/3,8/5,…, 求出这个数列的前20项之和。 Yn/Xn: Yn= Yn-1+Xn-1, , Xn=Yn-1 main( ) {int n,t,num=20; 运行结果如下: float a=2,b=1,s=0; sum=32.660259 for (n=1;n=num;n++) {s=s+a/b; t=a; a=a+b; b=t; } printf(sum=%9.6f\n,s); } 例:从键盘上输入若干个正整数,以零为输入结束标记,求其中的最大和最小数。 main() {int x,max,min; scanf(%d,x); max=min=x; /*设第一次读取的整数既为最大数又为最小数*/ for(;x;) /*当读取的整数不为零,则继续循环*/ {if (xmin) min=x; /*如果当前读取的数比min小,则保留该值*/ if (xmax) max=x; /*如果当前读取的数比max大,则保留该值*/ scanf(%d,x); /*读取下一个整数*/ } printf(“max=%d,min=%d\n,max,min); } 例:计算1!+2!+3!+…+n! 算法分析: 两层循环,内层计算某个数的阶乘,外层负责提供数, 并且将内层的结果加到存放和的变量中去。 【例4.30】计算1!+2!+3!+…+n! main() {int k,n; long t=1,sum=0; printf(\nEnter n=); scanf(%d,n); for (k=1;k=n;k++) {t=t*k; sum=sum+t; } printf(1!+2!+...+%d!=%ld,n,sum); } 转移语句和语句标号 goto语句格式:goto 标号 goto语句功能:跳到标号所指的语句处去执行。 例:计算1+2+3+…..+100的值 #include stdio.h main() {int sum=0,i=1; loop:sum=sum+(i++); if(i101) goto loop; printf(“sum=%d\n”,sum) } 注意:goto语句不能跳到函数外,不得跳到循环体内。 例:累加用户输入的整数直到输入0为止。 #include stdio.h main() { int s=0,x; while(1) {scanf(“%d”,x); if(x==0) goto end; s=s+x; } end:printf(“s=%d\n”,s); } 注意:标号要符

文档评论(0)

wnqwwy20 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:7014141164000003

1亿VIP精品文档

相关文档