第4章 循环控制.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文档。上传文档
查看更多
Logo Logo Logo Logo Logo Logo Logo Logo Logo Logo Logo 循环控制 从键盘中输入一个数n,求n! 已知,3!=3*2*1,5!=5*4*3*2*1,依此类推n!=n*(n-1)*……*2*1,使用while循环控制语句求n!。 #include stdio.h void main() { int i=2,n; /*定义变量i,n为基本整型并为i赋初值2*/ float fac=1; /*定义fac为单精度型并赋初值1*/ printf(请输入一个大于0的整数.\n); scanf(%d,n); /*使用scanf函数获取n的值*/ if(n==0||n==1) /*当n为0或1的时候输出阶层为1*/ { printf(%d的阶乘是1.\n, n); return 0; } while(i=n) /*当满足输入的数值大于等于i时执行循环体语句*/ { fac=fac*i; /*实现求阶层的过程*/ i++; /*变量i自加*/ } printf(%d的阶乘是:%.2f.\n,n,fac); /*输出n和fac最终的值*/ } 从键盘中输入一个数n,求n! 首先要理清求n!的思路。求一个数n的阶层也就是用n*(n-1)*(n-2)*…*2*1,那么反过来从1一直乘到n,即1*2*3*…*n,这样求依然成立。当n为0和1的时候我们单独考虑,此时他们的阶层均为1。 程序首先是对n值进行判断,n值不等于0且不等于1时,将执行while语句,当while语句中的表达式i小于等于输入的数n时执行while循环体中的语句,fac=fac*i作用是当i为2时求2!,当i为3时求3!,当i为n时求n!,最后将其输出。 买苹果问题 小雨买苹果,每个苹果0.8元,第一天买2个苹果,第二天开始每天买前一天的2倍,直到购买的苹果个数达到不超过100的最大值,编程求小雨每天平均花多少钱?(范例位置:光盘\TM\fl\4\2) #include stdio.h main() { int n=2,day=0; /*定义n,day为基本整型*/ float money=0,ave; /*定义money,ave为单精度型*/ while(n100) /*苹果个数不超过100,故while中表达式n小于100*/ { money+=0.8*n; /*将每天花的钱数累加求和*/ day++; /*天数自加*/ n*=2; /*每天买前一天个数的2倍*/ } ave=money/day; /*求出平均每天花的钱数*/ printf(The result is %.6f\n,ave); /*输出每天平均所花钱数*/ } 买苹果问题 分析上述题目要求,假设每天购买的苹果数为n,花的钱数总和为money,那么money和n之间的关系这里我们可以通过一个等式来说明,即money=money+0.8*n,它的具体含义是截止到目前所花的钱数等于今天所购买的苹果花的钱数与之前所花的钱数的总和。 这里应注意n值的变化,n初值应为2,随着天数每天增加(day++),n值随之变化即n=n*2,以上过程应在while循环体中进行,那么while语句结束的条件是什么呢?根据题意可知“购买的苹果个数应是不超过100的最大值”,很明显n的值是否小于100便是判断这个while语句是否执行的条件。 统计不及格人数 假设一个班中有20个学生,输入某科考试的成绩,然后统计出该班不及格的学生人数。(范例位置:光盘\TM\fl\4\3) #define N 20 /*定义常量*/ #include stdio.h /*引用头文件*/ void main() { int i; /*定义整型变量,循环计数*/ int score,count=0; /*定义整型变量,存储分数和最大值*/ printf(输入一科的考试成绩:\n); /*提示用户输入分数*/ for (i=1;i=N;i++) /*循环*/ { scanf(%d,score); /*

文档评论(0)

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

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

1亿VIP精品文档

相关文档