第五章循环结构C版.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文档。上传文档
查看更多
第四节 循环嵌套 例4.13 一个炊事员上街采购,用500元钱买了90只鸡,其中母鸡一只15元,公鸡一只10元,小鸡一只5元,正好把钱买完。问母鸡,公鸡,小鸡各买了多少只? 【分析】设母鸡i只,公鸡j只,则小鸡为90-i-j只,则15*i+ 10* j+(90-i-j)*5=500,显然一个方程求两个未知数是不能直接求解。必须组合出所有可能的i,j值,看是否满足条件。这里i的值可以是0到33,j的值可以0到50。源程序如下: #include iostream using namespace std; int main () { int k; for (int i=0;i=33;++i) //枚举母鸡的数量 for (int j=0;j=50;++j) //枚举公鸡的数量 { k=90-i-j; if (15*i+10*j+k*5==500) { cout母鸡有i只,公鸡有j只,小鸡有k只 endl; } } return 0; } 第四节 循环嵌套 例4.14 利用for循环语句输出图4-1中的三角形。 * ** *** **** ***** 图4-1 #include iostream using namespace std; int main () { for (int i=1; i=5; ++i) //控制行数 { for (int j=1; j=i; ++j) //输出一行中的*数 cout*; coutendl; //换行 } return 0; } 第四节 循环嵌套 例4.15 求100-999中的水仙花数。若三位数ABC,ABC=A3+B3+C3,则称ABC为水仙花数。 例如153,13+53+33=1+125+27=153,则153是水仙花数。 【分析】 根据题意,采用三重循环来求解。由于循环次数一定,用for循环最为简单。程序如下: #includeiostream #includeiomanip //调用setw函数需注明使用该库 using namespace std; int main() { for (int a=1; a=9; ++a) for (int b=0; b=9; ++b) for (int c=0; c=9; ++c) { if (a*a*a+b*b*b+c*c*c==a*100+b*10+c) coutsetw(6)a*100+b*10+c; //setw函数控制输出场宽 } return 0; } 运行结果: 153 370 371 407 第四节 循环嵌套 同时也可以采用一个for循环来求解,表面上看好像优于三重循环,实际上却比上面的程序效率低,请同学们自己分析。 程序如下: #includeiostream #includeiomanip using namespace std; int main() { int a,b,c; for (int m=100; m=999; ++m) { a=m/100; //m的百位 b=(m%100)/10; //m的十位 c=m%10; //m的个位 if (a*a*a+b*b*b+c*c*c==m) coutsetw(6)m; } return 0; } 第四节 循环嵌套 例4.16 输出100—200中所有的素数。 分析:我们可对100-200之间的每一个整数进行判断,若它是为素数,则输出。而对于任意整数i,根据素数定义,我们从2开始,到sqrt(i),找i的第一个约数,若找到第一个约数,则i必然不是素数。 程序如下: #include iostream #includecmath //在Dev C++中可调用数学函数库cmath using namespace std; int main () { int x; for (int i=100;i=

文档评论(0)

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

同一个世界,同一个梦想

1亿VIP精品文档

相关文档