C程序设计第6章选择结构程序设计.ppt
《C程序设计第6章选择结构程序设计.ppt》由会员分享,可在线阅读,更多相关《C程序设计第6章选择结构程序设计.ppt(33页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第6章选择结构程序设计 选择结构的选择结构的N-S流程图如图流程图如图6.1所示。所示。图6.1选择结构的N-S流程图P为选择的条件,对于执行为选择的条件,对于执行A还是还是B要根要根据条件据条件P的判断结果来决定,如果条件的判断结果来决定,如果条件P的结的结果为真则执行果为真则执行A,如果条件,如果条件P的结果为假则执的结果为假则执行行B。这里条件。这里条件P的结果就成为执行的结果就成为执行A还是还是B的关键所在。的关键所在。P是一个判断的条件,其结果是一个判断的条件,其结果为真或者假,将其称为为真或者假,将其称为“逻辑量逻辑量”。C语言语言中没有提供逻辑型变量,可以使用整型数据中没有提供逻
2、辑型变量,可以使用整型数据去描述去描述1表示真,表示真,0表示假。在表示假。在C语言中任意语言中任意确定的值都可作为逻辑量处理,当作为逻辑确定的值都可作为逻辑量处理,当作为逻辑量处理时,如果该值为非量处理时,如果该值为非0,则表示真(,则表示真(1),),如果该值为如果该值为0,则表示假(,则表示假(0)。下面讲述条)。下面讲述条件件P的逻辑量表示方法。的逻辑量表示方法。6.1 6.1 逻辑量的表示方法逻辑量的表示方法6.2 if6.2 if语句语句6.3 switch6.3 switch语句语句6.4 6.4 选择结构程序设计举例选择结构程序设计举例6.1 6.1 逻辑量的表示方法逻辑量的表
3、示方法C语语言言中中逻逻辑辑量量是是用用整整型型数数据据来来表表示示的的,用用来来表表示示真真或或成成立立,用用来来表表示示假假或或不不成成立立。逻逻辑辑量量的的表表示示是是非非常常灵灵活活的的,具体表示方法有以下几种方式。具体表示方法有以下几种方式。6.1.1关系表达式1关系运算符关系运算符关关系系运运算算是是一一种种比比较较运运算算符符两两侧侧运运算算对对象象大大小小的的运运算算,完完成成两两个个运运算算对对象象比比较较,运运算算结结果果为为成立与不成立,用成立与不成立,用1和和0表示。表示。关系运算符有以下关系运算符有以下6种:种:,=,b,3+7!=10,aaa+(b=a+)都是合法的
4、都是合法的C语言关系表达式。语言关系表达式。关关系系表表达达式式的的求求解解遵遵循循表表达达式式求求解解规规则则,关关系系运运算算的的结结果果只只有有两两种种可可能能,要要么么关关系系成成立立为为真真(1),要么关系不成立为假(),要么关系不成立为假(0)。)。例如有整型变量例如有整型变量a,b,且,且a 3,b 5,求解表达式:求解表达式:a ba算术运算符算术运算符“”的优先级高于关系运算的优先级高于关系运算符符“”,因此先计算,因此先计算a b的值为的值为8,之后运算,之后运算8a,而,而a参加运算时需转换为整型数参加运算时需转换为整型数97运运算,实际运算的是算,实际运算的是897,判
5、断后其结果为不成,判断后其结果为不成立,表达式的运算结果为立,表达式的运算结果为0。若有关系表达式若有关系表达式0 x10,则其运算结果为,则其运算结果为逻辑量逻辑量1。表达式中两个。表达式中两个运算的优先级相同,运算的优先级相同,于是首先运算于是首先运算0 x,x的值无论是多少,运算结的值无论是多少,运算结果只能是果只能是1或者或者0;然后要么运算;然后要么运算110,要么运,要么运算算0n)elseprintf(Themaxis%dn,n);图6.7例6.2的流程图使用使用if语句要注意以下几点。语句要注意以下几点。(1)if语句是一条语句。语句是一条语句。(2)逻逻辑辑量量是是if语语句
6、句选选择择判判断断的的条条件件,C语语言言中中任任意确定的值都可以作为逻辑量处理。意确定的值都可以作为逻辑量处理。(3)逻逻辑辑量量为为1和和为为0的的分分支支都都只只能能是是单单条条语语句句,如如果果要要执执行行多多个个操操作作的的话话,应应该该将将多多个个操操作作复复合合为为单条语句才能出现在单条语句才能出现在if的分支结构中。的分支结构中。(4)分支中出现的语句)分支中出现的语句1是复合语句的时候,是复合语句的时候,后后不应该有不应该有“;”。(5 5)语句中语句)语句中语句1 1是条件语句中必不可少的部分。是条件语句中必不可少的部分。(6 6)正确理解)正确理解ifif语句和语句和N-
7、SN-S选择结构流程图的对应选择结构流程图的对应关系。关系。嵌嵌套套主主要要用用于于处处理理多多条条件件的的题题目目。设设计计嵌嵌套套选选择择结结构构时时,应应清清晰晰描描述述各各条条件件之之间间的的约束关系。嵌套的约束关系。嵌套的if语句可以简单描述如下:语句可以简单描述如下:嵌嵌入入的的if语语句句是是在在当当外外围围的的if语语句句的的条条件件p1的的逻逻辑辑量量值值为为1时时才才可可以以执执行行,即即其其作作为为外外围围if语语句句的的条条件件成成立立时时的的执执行行语语句句,嵌嵌入入在在外外围围if内内。当当然然语语句句1、语语句句2、语语句句3也也可可以以是是if语语句句,具具体体
8、的的嵌嵌套套形形式式和和具具体体题题目目中中的的多多条条件件是是密密切切相相关关的的,if语语句句的的嵌嵌套套形形式式应应建建立立在对具体问题的分析上。在对具体问题的分析上。6.2.2 if语句的嵌套及多条件结构的实现语句的嵌套及多条件结构的实现例例6.4 求函数中求函数中x为任意值时为任意值时y 的值。的值。由于由于if选择结构仅有两个分支,而此分段选择结构仅有两个分支,而此分段函数函数x的定义域为三分支,因此当确定的定义域为三分支,因此当确定x的关的关系表达式时,其中必然有一个分支包含另外系表达式时,其中必然有一个分支包含另外两部分定义域,需在此基础上作进一步的条两部分定义域,需在此基础上
9、作进一步的条件判断。件判断。根据流程图得到如下程序:根据流程图得到如下程序:main()main()floatx,y;floatx,y;scanf(%f,&x);scanf(%f,&x);if(x0)y=1/x;if(x0)y=1/x;elseif(x=0)y=0;elseif(xb)?a:b的求解过程如下:此表达式右边为一条件表达式,的求解过程如下:此表达式右边为一条件表达式,由于条件运算符的优先级高于赋值运算符,应先由于条件运算符的优先级高于赋值运算符,应先计算条件表达式的值,再通过赋值运算符把得到计算条件表达式的值,再通过赋值运算符把得到的值赋给的值赋给max。在条件表达式中,首先计算表
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序设计 选择 结构
限制150内