第3章 基本语句及控制结构.ppt

  1. 1、本文档共61页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章 基本语句与控制结构 3.1 基本语句与顺序结构 1. 表达式语句 任何一个表达式加上分号就构成一个表达式语句。表达式 语句是组成程序的主要语句。执行一个表达式语句就是对表 达式求值。例如: i++; a+b; // 该表达式语句完成a+b的操作,是合法的,但其值没有被使用 x1= -b+sqrt(d) / (2*a); // 由赋值表达式构成的赋值语 是程序中使用最多的语句 3.1.2 顺序结构 C++支持结构化程序设计,这种程序设计方法使程序结构清晰、可读性好、程序质量高。结构化程序由3种基本结构组成,即顺序结构、选择结构和循环结构。每一个基本结构可以包含一条或多条语句。选择结构又称分支结构,循环结构也称重复结构。顺序结构、选择结构和循环结构是程序的基本流程控制结构。 3.2 选择结构 if语句 if语句的形式为: 3.2.2 switch语句 switch语句又称开关语句,其形式如下: 3.3 循环结构 C++中提供了用于实现循环结构的3种循环语句,它们是while语句、do-while语句和for语句。这些循环语句各适用于处理不同的问题,而有些问题可以用不同的循环语句来处理。 3.3.2 do-while语句 do-while语句的形式为: 3.3.3 for语句 for语句的形式为: 3.4 转向语句 break、continue和goto等都是改变程序流程的语句,称为流程转向控制语句,简称转向语句。使用这些语句可以使程序简练,或减少循环次数,或跳过那些没有必要再去执行的语句,以提高程序执行效率。但是,使用不当也容易对程序造成危害,所以我们要深入理解其功能,掌握其使用方法并慎重使用。 *3. goto语句 goto语句为自由转向语句,它可以将流程转到程序中的任何位置,通常是从它所在的地方转移到带有标号的语句处。如果不加限制地使用goto语句,则会导致程序流程的混乱,降低程序的可读性。因此,结构化程序设计一般情况下不使用goto语句,只有在使用它可以显著提高程序效率时,才使用它,但也不要将流程转移得太远。例如,在多重循环程序中,要从最内层循环跳到最外层循环之外,如果使用break语句,需要使用多次,而且可读性不好。这时,goto语句就可以发挥其作用了。 *4. 程序中止函数 exit() 函数exit()的功能是中止程序运行。参数为0时表示正常中止;参数为非0时表示程序运行发生了错误而非正常中止。 例如,求一个数的平方根的程序: 课后上机实习(1)(2)(3) 实习三 选择结构 实习四 循环结构(1) 实习五 循环结构 (2) 尽量完成标有*号的题目 请同学们思考一个问题:在循环体内如果不修改循环变量n的值,则程序能否正常运行?作为编程练习,请你对以上程序进行修改,完成: ① 求1+3+5+…+97+99之和。 ② 求2+4+6+…+m之和,m为一个偶数,其值由键盘输入。 do 语句 while (表达式); 其中语句为循环体,它可以是一条语句,也可以是复合语句。表达式可以是不同类型的表达式。do-while语句的执行过程如图3-3所示。首先执行循环体,然后判断表达式的值是否为非0,若是非0,则重复执行循环体;若是0,则结束循环。 表达式 非0 0 循环体 图3-3 do-while语句执行流程 【例3-8】利用do-while语句编程计算 1+2+3+…+99+100的值。 #includeiostream.h void main() { int sum=0, n=1; do { sum=sum+n; // 或sum+=n; n++; } while(n=100); // 注意:这里不要遗漏分号 coutsum=sumendl; } 【例3-9】利用do-while语句编程求两个正整数m和n的最大公约数。 算法描述:采用辗转相除法,设m为被除数,n为除数,r为余数。计算r=m%n,如果r不等于0,则把n赋给m,把r赋给n,再继续求余数r=m%n,如果r仍不等于0,则重复上述过程,直到余数r等于0为止。这时的m就是最大公约数。 程序如下: #includeiostream.h void main() { int m, n, r; coutEnter two positive numbers:; cinmn; do { r=m%n; m=n; n=r; } while(r!=0);

文档评论(0)

xuefei111 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档