四章选择结构程序设计ppt课件.ppt
《四章选择结构程序设计ppt课件.ppt》由会员分享,可在线阅读,更多相关《四章选择结构程序设计ppt课件.ppt(32页珍藏版)》请在三一办公上搜索。
1、第四章 逻辑运算和判断选择控制,C关系运算符和关系表达式,逻辑运算符和逻辑表达式,if 语句,switch 语句,实例,第四章 逻辑运算和判断选择控制,本章要点:理解关系运算及其表达式理解逻辑运算及其表达式掌握分支语句if的使用掌握多分支语句 switch的使用掌握选择结构程序设计,第四章 逻辑运算和判断选取控制4.1关系运算符和关系表达式 一、关系运算符及优先级,=,=(优先级相同)高=,!=(优先级相同)低 优先级低于算术运算符,高于赋值运算符。结合性:从左至右,例:c a+b 等价于 c(a+b)a b!=c 等价于(a b)!=c a=b c 等价于 a=(b c),二、关系表达式 格
2、式:(表达式 1)关系运算符(表达式 2)例如:(a=3)(b=5)a b+c 注意:1.表达式可以是算术表达式;关系表达式;逻辑表达式;赋值表达式;字符表达式等。2.关系表达式的值为逻辑值,即“真”或“假”。用“1”表示“真”,“0”表示“假”。如:int a=3,b=2,c=1;则:a b 表达式的 值为 1(a b)=c 表达式的 值为 1 f=a b c f 的值为 0,4.2逻辑运算符和逻辑表达式 一、逻辑运算符及优先级!,&,|,(!高于&高于|)1.!高于算术运算符,高于关系运算符,高于&,高于|赋值运算符 2.结合性:从左至右 例如:(a b)&(cd)等价于 ab&cd!a&
3、b|x y&c 等价于(!a)&b|(x y)&c(!a=b)|(x=y)等价于!a=b|x=y,二、逻辑表达式 如:(m=a b)&(n=c d)C 语言中逻辑表达式的值为“1”或“0”。在判断 一个数值量是否为“真”时,以“0”代表“假”,以“非 0”代表“真”。,注意:(1)逻辑表达式的值只能为“1”或“0”。在表达式中不同位置上出现数值,应正确区分 那些是作为数值运算或是关系运算,那些是 逻辑运算对象。,(2)在逻辑表达式的求解中,并非所有的逻辑运算 符都被执行。,1.如:a=4 则!a 为 0 a=4,b=5 则 a&b 的值为 1 4&0|2 则表达式的值为 1,注意:(1)如:5
4、 3 最后 1|0 结果为 1。,注意:(2)例如:a 则:(m=a b)&(n=cd)表达式中n仍为1,注意:(1)如:5 3 最后 1|0 结果为 1。,例如,示例,a=4 则!a 为 0 a=4,b=5 则 a&b 的值为 1 4&0|2 则表达式的值为 1,示例,(2)例如:a 则:(m=a b)&(n=cd)表达式中n仍为1,例如,示例,例如:,二、逻辑表达式 如:(m=a b)&(n=c d)C 语言中逻辑表达式的值为“1”或“0”。在判断 一个数值量是否为“真”时,以“0”代表“假”,以“非 0”代表“真”。,注意:(1)逻辑表达式的值只能为“1”或“0”。在表达式中不同位置上出
5、现数值,应正确区分 那些是作为数值运算或是关系运算,那些是 逻辑运算对象。,(2)在逻辑表达式的求解中,并非所有的逻辑运算 符都被执行。,1.如:a=4 则!a 为 0 a=4,b=5 则 a&b 的值为 1 4&0|2 则表达式的值为 1,注意:(1)如:5 3 最后 1|0 结果为 1。,注意:(2)例如:a 则:(m=a b)&(n=cd)表达式中n仍为1,注意:(1)如:5 3 最后 1|0 结果为 1。,例如,示例,a=4 则!a 为 0 a=4,b=5 则 a&b 的值为 1 4&0|2 则表达式的值为 1,示例,(2)例如:a 则:(m=a b)&(n=cd)表达式中n仍为1,例
6、如,示例,例如:,例如:,4.3 if 语句 一、if 语句的形式 1.if(表达式)语句 例如:if(x y)printf(“%d”,x);,表达式,语句,基本型,1.举例 if(x y)printf(“%d”,x);,if 语句实例 从键盘输入一个整数,如果大于60,就输出这个数。main()int x,y;y=60;printf(“Please input x:”);scanf(“%d”,实例,例如:,4.3 if 语句 一、if 语句的形式 1.if(表达式)语句 例如:if(x y)printf(“%d”,x);,表达式,语句,基本型,1.举例 if(x y)printf(“%d”,
7、x);,if 语句实例 从键盘输入一个整数,如果大于60,就输出这个数。main()int x,y;y=60;printf(“Please input x:”);scanf(“%d”,实例,例如:,4.3 if 语句 一、if 语句的形式 2.if(表达式)语句 1 else 语句 2 例如:if(x y)printf(“%d”,x);else printf(“%d”,y);,表达式,语句 2,语句 1,标准型,2.例如:if(x y)printf(“%d”,x);else printf(“%d”,y);,if 语句实例 从键盘输入两个整数,输出较大的一个数。main()int x,y;pri
8、ntf(“Please input x,y:”);scanf(“%d,%d”,实例,例如:,4.3 if 语句 一、if 语句的形式 2.if(表达式)语句 1 else 语句 2 例如:if(x y)printf(“%d”,x);else printf(“%d”,y);,表达式,语句 2,语句 1,标准型,2.例如:if(x y)printf(“%d”,x);else printf(“%d”,y);,if 语句实例 从键盘输入两个整数,输出较大的一个数。main()int x,y;printf(“Please input x,y:”);scanf(“%d,%d”,实例,3.if(表达式 1)
9、语句 1 else if(表达式 2)语句 2 else if(表达式 3)语句 3 else if(表达式m)语句 m else 语句 n,流程图,switch 多分支结构示意图,重点,说明:表达式:可以是各种类型的表达式或任意的 数值类型(整型、实型,字符型,指针型数据)else 不能单独使用,它是 if 的一部分。if 和else后的语句为复合语句时,应加 号。,表达式类型,反例,正例,如:if(a=b,正例 如:if(a b)a+=2;b=1;else a=1;b+=2;,反例if(a b)a+=2;b=1;else a=1;b+=2;/*b+=2 语句总要执行*/,正例if(a b)
10、a+=2;b=1;/*复合语句必须加 号*/else a=1;b+=2;,正例,if 语句反例if(a b)a+=2;b=1;else a=1;b+=2;/*b+=2 语句总要执行*/,实例,if语句的表达式可以是各种类型的表达式或任意的 数值类型如:if(a=b,正例,说明:表达式:可以是各种类型的表达式或任意的 数值类型(整型、实型,字符型,指针型数据)else 不能单独使用,它是 if 的一部分。if 和else后的语句为复合语句时,应加 号。,表达式类型,反例,正例,如:if(a=b,正例 如:if(a b)a+=2;b=1;else a=1;b+=2;,反例if(a b)a+=2;b
11、=1;else a=1;b+=2;/*b+=2 语句总要执行*/,正例if(a b)a+=2;b=1;/*复合语句必须加 号*/else a=1;b+=2;,正例,if 语句反例if(a b)a+=2;b=1;else a=1;b+=2;/*b+=2 语句总要执行*/,实例,if语句的表达式可以是各种类型的表达式或任意的 数值类型如:if(a=b,正例,例 5.1 将二个数进行升序排序 main()float a,b,t;scanf(“%f,%f”,运行结果:3.6,3.2 3.20,3.60,例 5.1 将二个数进行升序排序,例 5.2 将三个数进行升序排序,例 5.2 将三个数进行升序排序
12、 main()float a,b,c,t;scanf(“%f,%f,%f”,二个数升序淅程序,三个数升序淅程序,将二个数进行升序排序 main()float a,b,t;scanf(“%f,%f”,运行结果:3.6,3.2 3.20,3.60,例 5.1,示例,将三个数进行升序排序 main()float a,b,c,t;scanf(“%f,%f,%f”,例 5.2,示例,例 5.1 将二个数进行升序排序 main()float a,b,t;scanf(“%f,%f”,运行结果:3.6,3.2 3.20,3.60,例 5.1 将二个数进行升序排序,例 5.2 将三个数进行升序排序,例 5.2
13、将三个数进行升序排序 main()float a,b,c,t;scanf(“%f,%f,%f”,二个数升序淅程序,三个数升序淅程序,将二个数进行升序排序 main()float a,b,t;scanf(“%f,%f”,运行结果:3.6,3.2 3.20,3.60,例 5.1,示例,用if语句和goto语句构成循环,main()int i,sum=0;i=1;loop:if(i=100)sum=sum+i;i+;goto loop;printf(“%d”,sum);,例 5.2,示例,二、if 语句的嵌套 if语句中又包含一个或多个if语句叫 if语句的嵌套。一般形式:if(表达式1)else,
14、内嵌 if 语句,内嵌 if 语句,if(表达式2)语句 1else 语句 2,if(表达式3)语句 3else 语句 4,注意:if和else的配对关系:一个else总是和它上面离 它最近的且没有与其它 else 配对的 if 配对。如if和else的数目不等,应分辩else 与哪个if 配对,必要时可通过加 号来确定配对关系。,例如:if()if()语句1 else 语句2,例 5.3(p95)程序1.main()int x,y;scanf(“%d”,输入 x,x 0,真,假,x=0,真,假,y=1,y=0,y=1,输出 y,程序2.将上面程序的 if 语句改为:,main()int x,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 选择 结构 程序设计 ppt 课件
链接地址:https://www.31ppt.com/p-5379975.html