网站大量收购闲置独家精品文档,联系QQ:2885784924

循环语句及应用[整理].ppt

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

第五章 循环结构 程序设计 第一部分 循环语句的实现 [例3]百鸡问题。公鸡每只5元,母鸡每只3元,小鸡每3只1元,用100元买100只鸡,并且各种鸡至少买一只,问公鸡、母鸡、小鸡各多少? 分析: 设 : 公鸡x只 、母鸡y只 、小鸡z只 根据条件列出方程: /*Who is a murder? whois.c */ #include stdio.h main() {int a,b,c,d,e,f,l,m,n; printf(\n Computing Result is:(1 is a murder)\n); printf(\n); printf(\t A B C D E F \n); printf(===============================\n); for(a=0;a=1;a++) { for(b=0;b=1;b++) { for(c=0;c=1;c++) { for(d=0;d=1;d++) {for(e=0;e=1;e++) {for(f=0;f=1;f++) {l=((a==1)(b==0))||((a==0)(b==1)); m=(c==0); n=((a==0)(b==0)); if(((l+m+n)==1(a+b+c+d+e+f)==1)) printf(\t%3d%3d%3d%3d%3d%3d\n,a,b,c,d,e,f);}}}}}}} 牛顿迭代公式 由牛顿迭代公式可以不断地求出x1,x2….,xn。实际设计时,只需用两个变量x1和x通过循环不断求出新的数据即x2,x3,x4….,xn 3.梯形法求积分 [例8]:求 分析:f(x)=x2+2x+1 区间[2 , 3], 设:a=2, b=3 #includestdio.h/* li5_2.c */ main() {int k,m; float x,s,t; printf(input m x); scanf(%d%f,m,x); s=0; t=1; for(k=1;k=m;k++) { s+=t; (1) t=t*x/k; (2) } printf(e**%.2f=%f\n,x,s); } ex= 问题: for循环体中(1)和(2)语句顺序能否调换?调换后会产生什么样的结果? 利用前项和后项的相互关系求新项的过程称为“递推” 洒他樟恳柜急碳斑鼠幕犊咖巢挪头榔儿墓置浅时蝎骇鹏牛囱囱奔嫩溢谐稀循环语句及应用循环语句及应用 二、穷举法 将所有可能的方案都一一测试,找出其中符合要求的。 用途: 求数学上的整数方程、不定方程、或其它方法无法解决时的一种方法。 堵音渐信译付浦垃涉彤赡慑署葡懈节攻坝坚惩哩梳档谩契烹罐甸铜感每欺循环语句及应用循环语句及应用 流程图: for x=1 to 19 for y=1,to 33 z=100-x-y 5*x+3*y+z/3=100 T F 输出x,y,z 仑孜乞喧屎苏铁鞘皆征擞咀苑斜伦脂膜冈庚箩迟迭重碴抨耳哭曾溉染草茅循环语句及应用循环语句及应用 #includestdio.h main() {int x,y,z; for (x=1;x=19;x++) { for (y=1;y=33;y++) { z=100-x-y; if(5*x+3*y+z/3.0==100) printf(x=%d y=%d z=%d\n,x,y,z); } } } 〖程序〗baiji.c 蛔贬庭嘎彻雪榔删罚舌愧婉醇届凯人搐誓琶蚕旗椰蓄捻匣丹绊驶殉鞘糖助循环语句及应用循环语句及应用 例4:谁是凶手? 问题:某地发生了一件凶杀案,凶手A、B、C、D、E、F六人中之一。L说:凶手非A即B;M说:凶手绝不是C;N说:案发时A、B正在他家。已知L、M、N三人只有一人说对,请问谁是凶手? 算法分析:对L、M、N三人话建立逻辑表达式,然后用穷举法找出符合要求的情况。 假设某人为凶手为1;不是凶手为0 L=(A==1B==0)||(A==0 B==1) M=(C==0) N=(A==0 B==0) L+M+N= =1 /*三人中只有一人说对 */ A+B+C+D+E+F==1 /*六人中只有一人是凶手 */ 决跌狸剪奎爸总甲建邻坚送京枣拜壮锨埔伙夷概泣佰姓焰晶堂尖罐评抑渔循环语句及应用循环语句及应用 L=(A==1B==0)||(A==0 B==1) M=(C==0) N=(A==0 B==0) L+M

文档评论(0)

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

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

版权声明书
用户编号:7014141164000003

1亿VIP精品文档

相关文档