- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第五讲循环结构(C版)
* * * * 第二节 while语句 例4.7 编一程序求满足不等式1+ 1/2 + 1/3 …+1/n =5的最小n值。 分析:此题不等式的左边是一个求和的算式,该和式中的数据项个数是未知的,也正是要求出的。对于和式中的每个数据项,对应的通式为1/i,i=1,2,…n。 所以可采用循环累加的方法来计算出它的值。设循环变量为i,它应从1开始取值,每次增加1,直到和式的值不小于5为止,此时的i值就是所求的n。设累加变量为s,在循环体内把1/i的值累加到s上。 根据以上分析,采用while循环编写出程序如下: #include iostream using namespace std; int main () { int i=0; float s=0; while(s5) //当s的值还未超过5时 { ++i; s+=1.0/i; } couti; return 0; } 若采用for循环来写,则如下所示: #include iostream using namespace std; int main () { int i; float s=0; for(i=1;s5;++i) s+=1.0/i; couti-1; return 0; } 第二节 while语句 例4.8 数据统计 输入一些整数,求出它们的最小值、最大值和平均值(保留3位小数)。输入保证这些数都是不超过1000的整数。 样例输入:2 8 3 5 1 7 3 6 样例输出:1 8 4.375 【参考程序】 #includecstdio int main() { int x,n=0,min,max,s=0; while (scanf(“%d”,x)= =1) //当有输入的时候,表达式为真,即= =1,执行循环 { s+=x; if (xmin) min=x; if (xmax) max=x; ++n; } printf(%d %d %.3lf\n,min,max,(double)s/n); return 0; } 第二节 while语句 最后,我们来更仔细地研究一下输入输出。研究对象就是经典的“A+B”问题:输入若干对整数,输出每对之和。假设每个整数不超过109,一共不超过106个数对。 第1种方法是: #includecstdio int main() { int a,b; while(scanf(%d%d,a,b)==2) printf(%d\n,a+b); return 0; } 第2种方法也许更加常用(你再也不用记住%d、%lf等恼人的占位符了): #includeiostream using namespace std; int main() { int a,b; while(cin a b ) cout a+b endl; return 0; } 课堂练习 以下的 for 循环(? )。 ??for(x=0,y=0;(y!=123)(x4);x++)? ; A 执行 3 次??????????? B执行 4 次 C 循环次数不定??????D 是无限循环 已知:int a=5;执行语句while(a--0); a的值是( )。 A. 5 B. 0 C. –1 D. -2 B C 【上机练习4.2】 1、用while循环完成如下3题: ①求s=1+2+3+4+…+10 ②求s=1+1/2+1/3+…+1/100 ③计算n!,其中n由键盘输入。 2、输入任意的自然数A,?B,?求A?,?B的最小公倍数。 3、小球从100高处自由落下,着地后又弹回高度的一半再落下。求第20次着地时,?小球共通过多少路程? 4、Faibonacci数列前几项为:?0,1,1,2,3,5,8,…,其规律是从第三项起,?每项均等于前两项之和。求前30项,并以每行5个数的格式输出。 第三节 do-while语句 一、语句格式 格式1 说明:语句1是do-while的循环体。 格式2 说明:循环体部分由多个语句构成,应由一对花括号括起来,构成一个语句块的形式。 二、语句执行过程 (1)执行一遍循环体。 (2)求出作为循环条件的“条件表达式”的值,若为逻辑值真则自动转向第(1)步,否则结束do循环的执行过程,继续执行其后面的语句。 在d
您可能关注的文档
最近下载
- 2024版房屋抵押贷款合同范本.docx VIP
- 基于反作用飞轮和磁力矩器的卫星姿态控制系统分析-analysis of satellite attitude control system based on reaction flywheel and magnetic torque device.docx VIP
- 地贫筛查中的血红蛋白电泳.pptx VIP
- 光电开关HPX-AG系列使用说明书.PDF VIP
- 精神科患者风险的管理.pptx VIP
- 保护女职工权益知识竞赛题库50题(答案).docx VIP
- 盖板涵施工监理细则.pdf VIP
- 迅达3300调试汇总.doc VIP
- (高清版)B-T 19843-2022 工业通风机 射流风机性能试验.pdf VIP
- 冰美人淘宝直播数据复盘.xlsx VIP
文档评论(0)