循环和数组复习课程.ppt

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
循 环 与 数 组 一、级 数 问 题 二、多 重 循 环 三、穷 举 法 四、数 组 的 应 用;一、级数问题 级数求和要解决2个问题: ?通项的变化规律; ?求和的结束条件(按给定项数或按某种要求)。 例:习题集P71 5题 编写程序,计算当 时N的值 分析:本题中通项的变化规律是每次分母加1,求和的结束条件是sum10。 for(n=1;sum=10.0;n++) sum=sum+1.0/n; ;例:习题集P72 21题 某级数的前两项A1=1,A2=1 ,以后各项具有关系:An=An-2+2An-1。编写程序,要求依次对于整数M=100,1000,10000求出对应的n值,使其满足SnM且Sn+1≥M,这里Sn=A1+A2+…+An。 分析:本题中通项的变化规律是An=An-2+2An-1,求和的结束条件是SnM且Sn+1≥M。按此条件,每次循环判断求和结束时都要用前一次的和Sn-1以及本次的和Sn,因此要定义2个变量分别存放两次的和,循环体中要计算本次的和Sn= Sn-1+An ,若不满足结束条件,则要将本次的和保留在前一次的和的变量中,然后继续循环,直到满足条件。另外还要注意题目给出3 个M的值,也就是说,级数求和要做3次,因此要再加一重循环,构成二重循环。;循环(m分别取100,1000,10000) {a1,a2,s1赋初值; for(n=3; ;n++) /* n是项数,从第3项开始*/ {计算an,s2; if(s1ms2=m){break;} else {s1=s2;a1=a2;a2=an;} } printf(n=%d\n,n-1); };二、多重循环 多重循环是循环嵌套(循环套循环),要特别注意它的执行过程是外循环每执行一次,内循环要执行若干次。 例:习题集P71 11题 编写程序,计算500~800区间内素数的个数cnt,并按所求素数的值从大到小的顺序,计算其间隔减、加之和,即第1个素数-第2个素数+第3个素数-第4个素数+第5个素数…的值sum。 分析:按照题意,要对800~500区间(因为是从大到小)内的数逐个作出判断,而判断一个数是否为素数又要用一重循环,这样就构成了二重循环(外循环控制区间范围,内循环判断一个数是否为素数),每找出一个素数,cnt就要加1,再根据cnt的奇偶对sum进行加或减计算。; cnt=0,sum=0; 循环(i= 800~500) {判断i 是否为素数; if(i是素数) { cnt ++; 输出cnt,i; if(cnt为偶数)sum-=i; else sum+=i; } } 输出sum; ;例:习题集P71 15题 编写程序验证下列结论:任何一个自然数n的立方,都等于n个连续奇数之和。例如:13=1; 23=3+5; 33=7+9+11。要求程序对每个输入的自然数计算并输出相应的连续奇数,直到输入的自然数为0时止。 分析:首先考虑输入的自然数个数不确定,可用while语句对每一个数进行处理,在循环体内输入n,然后找连续n个奇数,使它们的和等于n的立方。 接下来要考虑的是连续n个奇数的起始数是未知的,因此需要循环测试。设变量k为起始数(k的初值为1),再设一个变量j从k开始循环累加连续n个奇数,若求出的和s等于n的立方,则结束测试k的循环,从k开始输出连续n个奇数,否则k=k+2;继续循环测试。; while(1) /* 该循环控制多个自然数 */ {输入一个自然数n); if(n==0)break; /*当输入0时,跳出循环 */ k=1; do /*该循环找出连续n个奇数,k是起始数 */ { s=0; for(i=1,j=k;i=n;i++,j=j+2)s+=j; k+=2; } while(s!=n*n*n); 输出n; 输出从k开始的连续n个奇数 };三、穷举法 穷举法是指不重复,不遗漏地穷举所有可能情况,以便从中寻求满足条件的结果。 在穷举法编程中,主要使用循环语句和选择语句。循环语句用于列举所有的可能性;而选择语句判定当前的条件是否为所求的解。 例:习题集P72 22题

文档评论(0)

158****8111 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档