(精品)C语言第四讲 (2).ppt
《(精品)C语言第四讲 (2).ppt》由会员分享,可在线阅读,更多相关《(精品)C语言第四讲 (2).ppt(43页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 1 C语言电子教案(四)语言电子教案(四)l第四讲第四讲 第五章第五章 逻辑判断和选取控制逻辑判断和选取控制l主要内容:主要内容:l5.1 5.1 关系运算符和关系表达式关系运算符和关系表达式l5.2 5.2 逻辑运算符和逻辑表达式逻辑运算符和逻辑表达式l5.3 5.3 ifif语句语句l 2 第五章第五章 逻辑运算和判断选取控制逻辑运算和判断选取控制l在在上章的例题中,我们能够按照三角形的三条边上章的例题中,我们能够按照三角形的三条边长求三角形的面积,也能够根据一元二次方程的长求三角形的面积,也能够根据一元二次方程的系数求方程的根。但是,如果我们所给定的三角系数求方程的根。但是,如果我们所
2、给定的三角形边长不能构成三角形,或者给定的一元二次方形边长不能构成三角形,或者给定的一元二次方程没有实根,上章的所学习的简单程序设计显然程没有实根,上章的所学习的简单程序设计显然不能解决上述问题。我们需要学习新的程序结构不能解决上述问题。我们需要学习新的程序结构判断选取结构(又称为选择结构)。判断选取结构(又称为选择结构)。3 5.1 关系运算符和关系表达式关系运算符和关系表达式l在程序设计中,我们经常会遇到对两个数据进行比较。在程序设计中,我们经常会遇到对两个数据进行比较。比如说,在上节的最后例比如说,在上节的最后例3 3(求一元二次方程的根)中,(求一元二次方程的根)中,如果我们在计算如果
3、我们在计算p,q,x1,x2p,q,x1,x2的值之前,能够对判别式的值之前,能够对判别式discdisc的值进行判断,对于的值进行判断,对于disc0disc0的情况进行另外的处理,的情况进行另外的处理,就不会出现令人啼笑皆非的结果了。在就不会出现令人啼笑皆非的结果了。在C C程序设计语言程序设计语言中中,比较运算是通过关系运算符实现的。所谓关系运算比较运算是通过关系运算符实现的。所谓关系运算实际上就是比较运算,即判断结果是否符合给定的条件实际上就是比较运算,即判断结果是否符合给定的条件。4 一、关系运算符及其优先等次序一、关系运算符及其优先等次序l关系运算符关系运算符:l关系运算符的优先顺
4、序:关系运算符的优先顺序:大于大于=大于等于大于等于=等于等于!=!=不等于不等于(=)(=!=)优先等级优先等级 高高低低关系运算符的运算顺序在算术运算符之后关系运算符的运算顺序在算术运算符之后 5 二、关系表达式二、关系表达式l关系表达式关系表达式:用关系运算符将两个表达式用关系运算符将两个表达式(算术、关系、逻辑、赋值算术、关系、逻辑、赋值表达式均可表达式均可)起来的式子叫关系表达式。起来的式子叫关系表达式。l关系表达式的取值关系表达式的取值:关系表达式的值是一个逻辑值,即关系表达式的值是一个逻辑值,即“真真”或或“假假”,条件成立取值为条件成立取值为“真真”,以,以“1 1”代表代表“
5、真真”;条件不成;条件不成立,取值为立,取值为“假假”,以,以“0 0”代表代表“假假”。6 三、关系表达式的取值判断三、关系表达式的取值判断例如:有如下程序语句:例如:有如下程序语句:a=32;b=-8;c=a=b;a=32;b=-8;c=a=b;执行完上述语句后,变量执行完上述语句后,变量c c的值为?的值为?又如:有如下程序语句:又如:有如下程序语句:a=32;b=-8;c=a32;a=32;b=-8;c=a32;执行完上述语句后,变量执行完上述语句后,变量c c的值为?的值为?又如:有如下程序语句:又如:有如下程序语句:a=32;b=-8;c=a=b;a=32;b=-8;c=a=b;执
6、行完上述语句后,变量执行完上述语句后,变量c c的值为?的值为?又如:有如下程序语句:又如:有如下程序语句:a=32;b=-8;c=a=b;a=32;b=-8;c=a=b;执行完上述语句后,变量执行完上述语句后,变量c c的值为?的值为?100-8 7 5.2 逻辑运算符和逻辑表达式逻辑运算符和逻辑表达式l除了关系运算之外,我们还会遇到这样的问题:除了关系运算之外,我们还会遇到这样的问题:若干个开关并联,在何种条件下,电路接通;若若干个开关并联,在何种条件下,电路接通;若干个开关串联,在何种条件下,电路接通。还有,干个开关串联,在何种条件下,电路接通。还有,我们在数学中会遇到判断我们在数学中会
7、遇到判断00 x 1x 1这样的问题,这样的问题,仅用关系运算符是不能解决这些问题的。这类问仅用关系运算符是不能解决这些问题的。这类问题的解决需要使用逻辑运算符。题的解决需要使用逻辑运算符。8 一、逻辑运算符一、逻辑运算符l逻辑运算符逻辑运算符:l关系运算符的优先顺序:关系运算符的优先顺序:&与与(双目)(双目)|或或(双目)(双目)!非非(单目)(单目)优先等级优先等级 高高低低 逻辑与和逻辑或运算符的运算顺序在关系运算符之逻辑与和逻辑或运算符的运算顺序在关系运算符之后,在赋值运算符之前。后,在赋值运算符之前。!非非(单目)(单目)&与与(双目)(双目)|或或(双目)(双目)9 二、逻辑运算
8、符的运算规则二、逻辑运算符的运算规则l运算符运算符 运算对象运算对象1 运算对象运算对象2 运算结果运算结果l&真真 真真 真真l&真真 假假 假假l&假假 真真 假假l&假假 假假 假假l|真真 真真 真真l|真真 假假 真真l|假假 真真 真真l|假假 假假 假假l !真真 假假l !假假 真真 10 三、逻辑表达式及其取值三、逻辑表达式及其取值l逻辑表达式:逻辑表达式:用逻辑运算符将表达式(算术、关系用逻辑运算符将表达式(算术、关系或逻辑表达式)连起来的式子叫逻辑表达式。或逻辑表达式)连起来的式子叫逻辑表达式。l逻辑表达式的取值逻辑表达式的取值:逻辑表达式的值是一个逻辑值,即逻辑表达式的
9、值是一个逻辑值,即 真真 或或 假假,条件,条件成立取值为成立取值为 真真,以,以 1 1 代表代表 真真;条件不成立,取;条件不成立,取值为值为 假假,以,以 0 0 代表代表 假假。11 四、逻辑运算的几个注意事项四、逻辑运算的几个注意事项l逻辑表达式中的逻辑表达式中的运算对象运算对象可以是任意类型的数据,可以是任意类型的数据,只要运算对象的值为只要运算对象的值为0 0,视作取值为,视作取值为 假假,运算对,运算对象的值为非象的值为非0 0,视作取值为,视作取值为 真真。l在逻辑表达式中并非所有的逻辑运算符都被全部在逻辑表达式中并非所有的逻辑运算符都被全部执行。只要能够得到确定的结果,逻辑
10、运算就会执行。只要能够得到确定的结果,逻辑运算就会自动终止。自动终止。12 五、逻辑运算符的使用举例五、逻辑运算符的使用举例例如:有如下程序语句:例如:有如下程序语句:a=32;b=-8;a=32;b=-8;逻辑表达式逻辑表达式a=0&a=0&a10 的取值为?的取值为?注意千万不能将上述表达式写成:注意千万不能将上述表达式写成:0=0=a10a=0&b a=0&b 的取值为?的取值为?注意运算对象可以是整数,非注意运算对象可以是整数,非0 0视作成立视作成立1 1例如:有如下程序语句:例如:有如下程序语句:a=32;b=-8;a=32;b=-8;逻辑表达式逻辑表达式a=0&ba=0&b=12
11、 12 的取值为?计算完逻辑表达的取值为?计算完逻辑表达式的值后,变量式的值后,变量b b的值为多少?的值为多少?0 0-8-8 13 五、逻辑运算符的使用举例五、逻辑运算符的使用举例例如:有如下程序语句:例如:有如下程序语句:a=32;b=-8;逻辑表达式逻辑表达式a=0&a10 的取值为?的取值为?注意千万不能将上述表达式写成:注意千万不能将上述表达式写成:0=a=0&b 的取值为?的取值为?注意运算对象可以是整数,非注意运算对象可以是整数,非0视作成立视作成立1例如:有如下程序语句:例如:有如下程序语句:a=32;b=-8;逻辑表达式逻辑表达式a=0&(b=12)的取值为?计算完逻辑表达
12、的取值为?计算完逻辑表达式的值后,变量式的值后,变量b的值为多少?的值为多少?112注意运算对象可以是表达式注意运算对象可以是表达式,表达式的值非表达式的值非0就视作成立就视作成立 14 五、逻辑运算符的使用举例五、逻辑运算符的使用举例例如:有如下程序语句:例如:有如下程序语句:a=32;b=-8;逻辑表达式逻辑表达式a=0&a10 的取值为?的取值为?注意千万不能将上述表达式写成:注意千万不能将上述表达式写成:0=0=a10a=0&b 的取值为?的取值为?注意运算对象可以是整数,非注意运算对象可以是整数,非0 0视作成立视作成立1例如:有如下程序语句:例如:有如下程序语句:a=32;b=-8
13、;逻辑表达式逻辑表达式a=0&(b=12)的取值为?计算完逻辑表达的取值为?计算完逻辑表达式的值后,变量式的值后,变量b的值为多少?的值为多少?注意该逻辑表达式中注意该逻辑表达式中&后面的赋值语句并未执行。后面的赋值语句并未执行。0-8 15 五、逻辑运算符的使用举例五、逻辑运算符的使用举例逻辑表达式逻辑表达式 !a 与与 等价?等价?a=0当当a a的值不为的值不为0 0时,前者取值为时,前者取值为0 0,后者取值也为,后者取值也为0 0当当a a的值为的值为0 0时,前者取值为时,前者取值为1 1,后者取值也为,后者取值也为1 1 16 5.3 if 语句语句l在上一章的例题中,计算一元二
14、次方程的根时,没有在上一章的例题中,计算一元二次方程的根时,没有考虑判别式考虑判别式b*b-4*a*c0b*b-4*a*c0的情况;在计算三角形面积的情况;在计算三角形面积时,也没有考虑时,也没有考虑 s*(s-a)*(s-b)*(s-c)0s*(s-a)*(s-b)*(s-c)=0)if(x=0)y=2*x+1;y=2*x+1;/*/*语句语句 */*/printfprintf(x=%d,y=%dn,x,y);(x=%d,y=%dn,x,y);程序运行后,当从键盘上输入程序运行后,当从键盘上输入3时,程序运行时,程序运行的结果是多少?的结果是多少?程序运行后,当从键盘上输入程序运行后,当从键
15、盘上输入-5时,程序运行时,程序运行的结果是多少?的结果是多少?x=3,y=7x=-5,y=0例如,求:例如,求:y=2x+1 x=00 x=0)y=2*x+1;/*语句语句1 */else y=x*x+1;/*语句语句2 */printf(x=%d,y=%dn,x,y);程序运行后,当从键盘上输入程序运行后,当从键盘上输入3时,程序运行时,程序运行的结果是多少?的结果是多少?程序运行后,当从键盘上输入程序运行后,当从键盘上输入-5时,程序运行时,程序运行的结果是多少?的结果是多少?x=3,y=7x=-5,y=26例如,求:例如,求:y=2x+1 x=0 x2+1 xb)l printf(%.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精品C语言第四讲 2 精品 语言 第四
限制150内