欢迎来到天天文库
浏览记录
ID:46842657
大小:335.00 KB
页数:20页
时间:2019-11-28
《流程控制结构之选择结构》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第五章流程控制结构之选择结构杨章伟e-mail:yang505412@163.com课程内容安排C++中条件的构成。if语句的应用。switch语句的应用。选择结构的嵌套。选择结构的综合应用。条件在C++程序中,“条件”是用一个表达式表示的,该表达式的结果是一个bool值,或者是某个整数值。在程序执行过程中,如果某个条件得到了满足,或者不满足,那么程序就会沿着相应的语句序列顺序执行下去。因此,条件是选择结构的一个重要组成部分。一般来说,C++中,条件一般有两种形式:关系表达式条件和逻辑表达式条件。if语句在C++语言中,有两
2、种类型的语句可以控制选择结构的流程,其分别为if语句和switch语句。其中,if语句又有3种形式:if形式、if…else形式和if…elseif…else形式if形式if形式是if语句的一种基本形式,也是最为简单的一种形式,if形式的选择语句也被称为单分支语句。其说明语句的一般形式为:if(<表达式>)<语句>;其中,表达式可以是int型、long型、char型和enum型等数据类型,表达式的值有零和非零两种,零为false(假),非零为true(真);语句可以是任何类型的语句,也可以是块语句,即包含在一对{}中的一组语
3、句。if…else形式if…else形式的语句也称为双分支条件语句,其说明语句的一般形式为:if(<表达式>)<语句1>;else<语句2>;该语句的语义是:如果表达式的值为真(true),则执行语句1;否则执行语句2。相对于如上的if语句,if…else语句增加了对于表达式的值为假(false)时的处理语句if…elseif…else形式C++中提供了if...elseif…else语句用于多分支结构的流程控制,该语句一般的语句形式如下所示:if(<表达式1>)<语句1>;elseif(<表达式2>)<语句2>;…else
4、if(<表达式n>)<语句n>;else<语句n+1>;if…else语句的嵌套,是指在一个if…else形式语句中还包含了其他if语句或if…elseif…else语句。一般来说,嵌套的if…else语句基本形式如下所示。if(<条件表达式1>)if(<条件表达式2>)<语句块1>;else<语句块2>;elseif(<条件表达式3>)<语句块3>;else<语句块4>;在嵌套的if…else语句中,相配的if和else不是靠缩进决定的,而是遵循一定的规则,即“就近原则”。所谓“就近原则”是指else总是与和最近出现的且没
5、有匹配的if相匹配”。if…else语句嵌套在C++中,switch语句也称情况语句,其也是一种多分支语句,用于实现有多种选择的程序流程switch(表达式){case<常量1>:<语句1>;break;case<常量2>:<语句2>;break;……case<常量n>:<语句n>;break;default:;}switch语句所谓选择据结构的嵌套是指在一个选择结构流程控制语句中又含有其他的选择结构流程控制语句。例如,当if语句中的执行语句又是if语句时,就构成了if语句嵌套的情形,在switch语句
6、中还可以有if语句,这也是选择结构的嵌套形式。选择结构的嵌套选择结构综合应用选择结构在应用程序中使用较多,其使用较为灵活,很多实际问题都可以通过各种选择流程控制语句来实现。通过前面小节关于条件、if语句和switch语句的介绍,读者对于C++中选择结构的流程控制已有一定了解,下面通过两个具体示例加强读者对于选择结构的理解。根据用户输入一个年份判断某年是否为闰年。计算闰年的方法是,如果某年份能被4整除并且不能被100整除的或者能被400整除的,则该年为闰年。小结本章主要介绍了结构化程序设计中的另一种重要结构——选择结构。在具体
7、讲解控制选择结构流程的两种语句前,本章首先简要介绍了选择结构的重要组成部分——条件的组成,对关系条件、逻辑条件和组合条件做了详细介绍。本章重点讲解了if语句的3种形式:if形式、if…else形式和if…elseif…else形式,此外,对于switch语句及选择结构的嵌套,本章也进行了具体讲解,并通过多个应用示例予以验证,掌握好这部分对于学好C++程序设计是非常关键的。习题【题目51】已知intx=10,y=20,z=30,以下语句执行后x,y,z的值将分别是多少?if(x>y)z=x;x=y;y=z;【分析】该试题主要考
8、查if语句。在上述语句中,首先判断关系条件x>y的值是否为true,此处将x和y的值分别代入:x=10,y=20,因此x>y是不成立的,因此if语句下面的第一条语句不会执行,即语句z=x不会执行,而其后的两条语句x=y和y=z语句将会被执行。因此,执行该语句段后,x、y和z的值分别为20,
此文档下载收益归作者所有