ch05_循环结构教材课程.ppt

  1. 1、本文档共40页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ch05_循环结构教材课程.ppt

;循环的引入……;再举些例子……;;循环的两种情形;问题的实质:多次做加法。 解决方法:使用循环 循环条件:n=100 (n的初始值为1) 循环体:做累加     n的值增加1 累加的实现方法:   设一个存储和值的变量:sum;   用赋值实现累加:sum=sum+n;;#include stdio.h void main() {int n,sum=0; n=1; while (n=100) { sum=sum+n; n++;} printf(%d\n,sum); };用while语句实现循环;#include stdio.h void main(void) {float sum ; int k,m,n; k=1; sum=0; scanf(%d,n ); while (k=n ) {printf(input a achievement :); scanf(%d,m ); sum=sum+m; k=k+1 ; } ; printf(average : %5.2f\n,sum/n ); } ;用do-while语句实现循环;;#include stdio.h void main() {float amount,sum=0; do {scanf(%f,amount); sum=sum+amount; printf(sum=%9.2f\n,sum); } while(sum10000); printf(sum=%9.2f\n,sum); };问题1的另一种解法;用for语句实现循环 ;for语句形式灵活……;for语句与while语句、do while语句的相互替换……;用for语句实现循环;;#include stdio.h #include math.h void main() { double t=1, v; int i; for(i=1; i64; i++) t=t+pow(2,i); v=t/1.42e8; printf(total=%.0f\n,t); printf(volume=%.0f\n,v); };#include stdio.h void main() { double p=1, t=1, v; int i; for(i=1; i64; i++) { p=p*2; t=t+p; } v=t/1.42e8; printf(total=%.0f\n,t); printf(volume=%.0f\n,v); };几种循环的比较; 有一对兔子,出生后第3个月起每个月都生一对兔 子。小兔子长到第3个月后每个月又生一对兔子。假 设所有兔子都不死,求前40个月每月的兔子对数。;;编写程序; 根据 (格理高里展开式)求π的值。 假设要求计算前1000项的和。;#include stdio.h #include math.h void main() { float pi=0; int k; for(k=1;k=1000;k++) pi=pi+pow(-1,k-1)/(2*k-1); printf(%f\n,4*pi); }; 计算 前20项。;求任意两个正整数的最大公约数.;其它程序举例;请思考:如何打印九九表?;打印九九表;循环的嵌套;练习:(1)求1!+2!+3!+……+n! (2) (3)打印所有三位的Armstrong数 (水仙花数)如:153=13+53+33;5.2 循环的进一步讨论 ——break 与 continue;#include stdio.h void main() { int n,i,flag=1; scanf(%d,n); for(i=2;in;i++) if(n%i==0) flag=0; if(flag) printf(yes\n); else printf(no\n);};break与continue; int n,i,k,m=0; for(i=1;i=10;i++) { scanf(%d,n); if(n%2==0) continue; /*偶数跳过判断*/ k=2; while(n%k!=0k=n/2) k++; if (kn/2) /*n是素数,计数*/

文档评论(0)

youngyu0329 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档