欢迎来到天天文库
浏览记录
ID:51991936
大小:332.00 KB
页数:33页
时间:2020-03-27
《C程序设计第6章选择结构程序设计.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第6章选择结构程序设计选择结构的N-S流程图如图6.1所示。图6.1选择结构的N-S流程图P为选择的条件,对于执行A还是B要根据条件P的判断结果来决定,如果条件P的结果为真则执行A,如果条件P的结果为假则执行B。这里条件P的结果就成为执行A还是B的关键所在。P是一个判断的条件,其结果为真或者假,将其称为“逻辑量”。C语言中没有提供逻辑型变量,可以使用整型数据去描述1表示真,0表示假。在C语言中任意确定的值都可作为逻辑量处理,当作为逻辑量处理时,如果该值为非0,则表示真(1),如果该值为0,则表示假(0)。下面讲述条件P的逻辑量表示方法。6.1逻辑量的表示方法6.2if语句6.3s
2、witch语句6.4选择结构程序设计举例6.1逻辑量的表示方法C语言中逻辑量是用整型数据来表示的,用1来表示真或成立,用0来表示假或不成立。逻辑量的表示是非常灵活的,具体表示方法有以下几种方式。6.1.1关系表达式1.关系运算符关系运算是一种比较运算符两侧运算对象大小的运算,完成两个运算对象比较,运算结果为成立与不成立,用1和0表示。关系运算符有以下6种:>,>=,<,<=,==,!=关系运算符是双目运算符。其中前4种的优先级相同但要高于后2种,后2种优先级相同。所有6种运算符的优先级都高于赋值运算符,但都低于算术运算符。此6种关系型运算符均为左结合性。2.关系表达式用关系运算符
3、将运算对象连接起来的合乎C语言规则的表达式称为关系表达式。例如:a>b,3+7!=10,a>'a'a++>(b=a++)都是合法的C语言关系表达式。关系表达式的求解遵循表达式求解规则,关系运算的结果只有两种可能,要么关系成立为真(1),要么关系不成立为假(0)。例如有整型变量a,b,且a3,b5,求解表达式:ab>'a'算术运算符“”的优先级高于关系运算符“>”,因此先计算ab的值为8,之后运算8>'a',而'a'参加运算时需转换为整型数97运算,实际运算的是8>97,判断后其结果为不成立,表达式的运算结果为0。若有关系表达式04、中两个<运算的优先级相同,于是首先运算05、6、和!,其中“!”运算的优先级最高,仅次于小括号,为左结合性。“&&”的优先级高于“7、8、”,它们的优先级都低于关系运算符,高于赋值运算符。2.逻辑表达式用逻辑运算符将逻辑量连接而形成的合乎C语言规则的表达式称为逻辑表达式。参与逻辑运算的运算对象是逻辑量,在C语言中任意表达式都可以作为逻辑量来处理,具体处理规则是表达式值非0则为1,否则为0。逻辑运算的结果9、和关系运算一样,也是逻辑量。例如有整型变量a3,b4,c5,求解表达式!(xa)&&(yb)10、11、0。xa为赋值表达式,其值为变量的值。原式!3&&412、13、0!3为逻辑运算要把3转化为逻辑量10&&414、15、00&&4中要把4转化为逻辑量10&&116、17、0018、19、006.1.3实际问题中逻辑量的描述(1)图6.4所示x轴上阴影区间的数据描述图6.4逻辑量的表示示意图从该图可知,x的值应该在1到2之间,其值既要满足x>=1又要满足x<=2,即x>=1和x<=2同时成立,两个过程同时成立其结果才成立,此运算为逻辑与,可得表达式x>=1&&x<=2。注意,1>=x<20、=2是一个关系表达式,不能表示该区间。(3)闰年问题假定闰年为year,判定是否闰年的标准为:如果该年能被4整除且不能被100整除,或者该年能被400整除,则都为闰年。能被4整除且不能被100整除,可表示为year%40&&year%100!0;能被400整除可表示为year%4000。两者只要有一者成立即为闰年,是逻辑或关系,闰年问题的表达式为year%40&&year%100!021、22、year%4000,也可表示为!(year%4)&&year%10023、24、!(year%400)6.2.1if语句的格式if语句的格式为:if(逻辑量)语句1[else语句2]i25、f和else是构成if语句的关键字,语句中的逻辑量是选择结构的条件,[]表示else分支可有可无。if语句的N-S流程图如图6.5所示。语句1和语句2都只能是单条语句,如果在为真或为假的分支中需执行多个操作,应该使用复合语句将多个操作构成一条语句。语句1是选择结构必需的语句,else分支可有可无。6.2if语句if语句是实现选择结构算法的具体语句。图6.5if语句的N-S流程图使用if语句实现选择结构时,语句中的逻辑量对应于选择条件P,语句1对应于A操作,语句2对应于B操作。if
4、中两个<运算的优先级相同,于是首先运算05、6、和!,其中“!”运算的优先级最高,仅次于小括号,为左结合性。“&&”的优先级高于“7、8、”,它们的优先级都低于关系运算符,高于赋值运算符。2.逻辑表达式用逻辑运算符将逻辑量连接而形成的合乎C语言规则的表达式称为逻辑表达式。参与逻辑运算的运算对象是逻辑量,在C语言中任意表达式都可以作为逻辑量来处理,具体处理规则是表达式值非0则为1,否则为0。逻辑运算的结果9、和关系运算一样,也是逻辑量。例如有整型变量a3,b4,c5,求解表达式!(xa)&&(yb)10、11、0。xa为赋值表达式,其值为变量的值。原式!3&&412、13、0!3为逻辑运算要把3转化为逻辑量10&&414、15、00&&4中要把4转化为逻辑量10&&116、17、0018、19、006.1.3实际问题中逻辑量的描述(1)图6.4所示x轴上阴影区间的数据描述图6.4逻辑量的表示示意图从该图可知,x的值应该在1到2之间,其值既要满足x>=1又要满足x<=2,即x>=1和x<=2同时成立,两个过程同时成立其结果才成立,此运算为逻辑与,可得表达式x>=1&&x<=2。注意,1>=x<20、=2是一个关系表达式,不能表示该区间。(3)闰年问题假定闰年为year,判定是否闰年的标准为:如果该年能被4整除且不能被100整除,或者该年能被400整除,则都为闰年。能被4整除且不能被100整除,可表示为year%40&&year%100!0;能被400整除可表示为year%4000。两者只要有一者成立即为闰年,是逻辑或关系,闰年问题的表达式为year%40&&year%100!021、22、year%4000,也可表示为!(year%4)&&year%10023、24、!(year%400)6.2.1if语句的格式if语句的格式为:if(逻辑量)语句1[else语句2]i25、f和else是构成if语句的关键字,语句中的逻辑量是选择结构的条件,[]表示else分支可有可无。if语句的N-S流程图如图6.5所示。语句1和语句2都只能是单条语句,如果在为真或为假的分支中需执行多个操作,应该使用复合语句将多个操作构成一条语句。语句1是选择结构必需的语句,else分支可有可无。6.2if语句if语句是实现选择结构算法的具体语句。图6.5if语句的N-S流程图使用if语句实现选择结构时,语句中的逻辑量对应于选择条件P,语句1对应于A操作,语句2对应于B操作。if
5、
6、和!,其中“!”运算的优先级最高,仅次于小括号,为左结合性。“&&”的优先级高于“
7、
8、”,它们的优先级都低于关系运算符,高于赋值运算符。2.逻辑表达式用逻辑运算符将逻辑量连接而形成的合乎C语言规则的表达式称为逻辑表达式。参与逻辑运算的运算对象是逻辑量,在C语言中任意表达式都可以作为逻辑量来处理,具体处理规则是表达式值非0则为1,否则为0。逻辑运算的结果
9、和关系运算一样,也是逻辑量。例如有整型变量a3,b4,c5,求解表达式!(xa)&&(yb)
10、
11、0。xa为赋值表达式,其值为变量的值。原式!3&&4
12、
13、0!3为逻辑运算要把3转化为逻辑量10&&4
14、
15、00&&4中要把4转化为逻辑量10&&1
16、
17、00
18、
19、006.1.3实际问题中逻辑量的描述(1)图6.4所示x轴上阴影区间的数据描述图6.4逻辑量的表示示意图从该图可知,x的值应该在1到2之间,其值既要满足x>=1又要满足x<=2,即x>=1和x<=2同时成立,两个过程同时成立其结果才成立,此运算为逻辑与,可得表达式x>=1&&x<=2。注意,1>=x<
20、=2是一个关系表达式,不能表示该区间。(3)闰年问题假定闰年为year,判定是否闰年的标准为:如果该年能被4整除且不能被100整除,或者该年能被400整除,则都为闰年。能被4整除且不能被100整除,可表示为year%40&&year%100!0;能被400整除可表示为year%4000。两者只要有一者成立即为闰年,是逻辑或关系,闰年问题的表达式为year%40&&year%100!0
21、
22、year%4000,也可表示为!(year%4)&&year%100
23、
24、!(year%400)6.2.1if语句的格式if语句的格式为:if(逻辑量)语句1[else语句2]i
25、f和else是构成if语句的关键字,语句中的逻辑量是选择结构的条件,[]表示else分支可有可无。if语句的N-S流程图如图6.5所示。语句1和语句2都只能是单条语句,如果在为真或为假的分支中需执行多个操作,应该使用复合语句将多个操作构成一条语句。语句1是选择结构必需的语句,else分支可有可无。6.2if语句if语句是实现选择结构算法的具体语句。图6.5if语句的N-S流程图使用if语句实现选择结构时,语句中的逻辑量对应于选择条件P,语句1对应于A操作,语句2对应于B操作。if
此文档下载收益归作者所有