第2章 第2讲 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文档。上传文档
查看更多
第2章第2讲C控制结构

结构化程序设计 “自顶向下, 逐步求精”的基本方法总结 从题目本身开始, 找出解决问题的基本思路, 将其用流程图(可能是非常粗糙)表示。 对流程图中的比较抽象的、用文字描述的模块进一步分析细化,结果仍用流程图表示。 将所求解问题的所有细节都弄清楚后,再可以根据流程图直接写出相应程序代码。 结构化程序设计 如何求得素数p的下一个素数 素数很难简单地根据某个数学公式直接判断,只能通过逐个检验是否符合素数定义的方法得出。 我们采用素数表的方法,将给定范围内的所有素数存放在该表中,这样,求一个素数或检查一个数是否是素数就可转化为对素数表的查询。 只验证小于等于100的数,有可能用到的最大的素数也小于100 结构化程序设计 生成素数表的方法——埃拉托色尼提出的“筛法” 1. 首先定义一数组 int PrimeList[100] 2. 对数组初始化,令PrimeList[i] = i 3. 令k = 2,将下标k且是k的倍数的数从表中删去。 4. 令k=k+1,直到PrimeList[k]不为零,将下标k且是k的倍数的数从表中删去。 5. 重复第四步直到ksqrt(100)为止。 0 1 2 3 4 5 6 7 8 9 10 11 12 … 99 0 1 2 3 0 5 0 7 0 9 0 11 0 … 99 0 1 2 3 0 5 0 7 0 0 0 11 0 … 0 #define M 100 // 定义验证范围 void CreatPrimeList( int PrimeList[] ) { for( int i=0; iM; i=i+1 ) { PrimeList[i]=i; } int k=2; while( k=sqrt(M) ) { for(int j=k+1; jM; j=j+1) { if( PrimeList[j]%PrimeList[k] == 0 ) { PrimeList[j]=0; } } k=k+1; while( PrimeList[k] == 0 ) { k+=1; } } } 结构化程序设计 int NextPrimeNumber( int p, int PrimeList[] ) { p = p+1; while( PrimeList[p] == 0 ) { p = p+1; } return PrimeList[p]; } int main() { int PrimeList[M]; // 说明存放素数表的数组 CreatPrimeList(PrimeList); // 建立素数表 int x; // cin x; int p; //p为素数 if(4=xxM) { // 检查偶数减去一个素数后的剩余部分是否仍为素数 p = PrimeList[2]; while( px ) { if( PrimeList[x-p]!=0 ) // PrimeList[x-p]≠0, 分解成功 { coutThe numx=p+x-pendl; break; } else { p = NextPrimeNumber(p,PrimeList); } } if( px/2 ) // 找到了一个不能分解为两个素数和的偶数 { coutGreat discovery: Goldbach is wrong!endl; } x = x+2; // 检查下一个偶数 } return 0; } 第二讲 C++控制结构 授课内容 2.1 程序的基本控制结构 2.2 结构化程序设计 1.1 程序的基本控制结构 程序的基本控制结构 程序 面向过程 程序 = 数据+算法(函数来实现) 面向对象(OO) 程序={对象1,对象2,……,对象n} 对象= 属性 + 行为(函数来实现) 我们在编写函数时一般要采用结构化程序设计方法 程序的基本控制结构 结构化程序设计 是一个设计程序的技术,它采用自顶向下逐步求精的设计方法和单入口单出口的控制结构。 单入口单出口的控制结构 顺序结构、选择结构、循环结构 理论上已经证明,用三种基本程序结构可以实现任何单入口单出口的复杂的算法。 顺序结构 将多个语句顺序排列即可 交换两个变量的值的程序段 r =

文档评论(0)

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

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档