结构化程序的设计说明.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文档。上传文档
查看更多
5.递推法 “递推法”也称为 “迭代法”,其基本思想是把一个复杂的计算过程转化为简单过程的多次重复,每次重复都从旧值的基础上递推出新值,并由新值代替旧值。 【例3.15】利用牛顿迭代法求方程 在x0附近的根的近似值。 牛顿迭代公式为: 输入x0值,由公式求出x1,再由x1从公式求出x2,......,直到 时可视x n+1为方程f(x)=0在X0附近的一个近似根 ,设?为10-5 。 0 y x (x0,f(x0)) (x1,f(x1)) x0 x1 x2 x3 x x1=1; do { x0=x1; x1=x0 - (3*x0*x0*x0-4*x0*x0-5*x0+13)/(9*x0*x0-8*x0-5) }while(fabs(x1-x0)1e-5); 思考: 若迭代最高次数M后,即使达不到精度也要输出结果, 程序该如何修改? 6.分类统计 【例3.16】对输入一串字符,统计其中单词的个数、字母个数、数字个数。规定单词之间用一个空白符分开(空白符包括空格符、水平制表符、换行符)。以^z表示输入结束。 分析: (1)统计单词的个数,可通过统计空白符的个数得到。 (2)由于标准输入流cin输入时会把空白符作为输入结束符,所以应使用getchar()函数逐一读取字符,该函数必须用”stdio.h”。 int alpha(0), num(0),ch(0),word(0); while((c=getchar( ))!=EOF) // EOF代表文本结束符,对应输入CTRL+Z { if(c== ||c==\t||c==\n) word++; if(c=a c=z || c=A c=Z) alpha++; else if (c=0 c=9) num++; else ch++; } 知识回顾Knowledge Review 第三章 结构化程序设计 3.1 顺序结构 3.2 选择结构 3.3 循环结构 3.4 其它控制语句 3.5 应用举例 3.1 顺序结构 顺序结构:按照语句出现的先后顺序依次执行。 3.1.1 表达式语句 形式: 表达式; 例如: i++; sum=a+b; coutabendl; 3.1.2 空语句 形式: ; 作用: 当程序中某个位置在语法上需要一条语句,而在语义上又不 要求执行任何动作时,可放上一条空语句。 一般适用于在循环语句中做空循环体; 如: for (m = 0; m1000; m++) ; 3.1.3 复合语句 形式: { [变量定义] 语句组 } 作用:当程序中某个位置在语法上只允许一条语句, 而在语义上要执行多条语句才能完成某个操作时,需要使用复合语句。 例如: if(x==0) {couta; coutb;} 3.2 选择结构 选择结构:根据条件的值来判断程序的流向。 C/C++中,提供两类选择控制语句: if语句,实现n分支,要求n个表达式; switch语句,实现多分支;只用1个表达式。 3.2.1 if 语句 if语句的三种形式: 形式1: if (表达式) 语句 作用:当表达式为真(非0)时,执行表达式后面的语句, 否则绕过该语句,而执行其后面的语句。 【例3.1】已知两个数x和y,比较它们的大小,使得x大于y。 if(xy) {t=x; x=y; y=t;} coutxy; #include iostream.h void main() { int x,y,t; cout输入 x yendl; cinxy; if (xy) { t=x; x=y; y=t;} //x与y交换 coutxyendl; } 程序: 形式2: if (表达式) 语句1 else 语句2 作用:当表达式为真(非0)时,执行语句1,否则执行语句2。 【例3.2】计算分段函数: 要使max存放x、y中大者, min存放小者,分析下面程序段正确否? if (x) y=sin(x)+sqrt(x*x+1

文档评论(0)

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

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

1亿VIP精品文档

相关文档