C语言程序设计ppt课件第3章选择结构程序设计.ppt
《C语言程序设计ppt课件第3章选择结构程序设计.ppt》由会员分享,可在线阅读,更多相关《C语言程序设计ppt课件第3章选择结构程序设计.ppt(38页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、产生数据产生数据数据处理、计算数据处理、计算输出结果输出结果顺序结构程序设计定义变量定义变量三种控制结构的三种控制结构的N-SN-S流程图。流程图。思考:思考:输入三角形的三边长,求三角形面积。输入三角形的三边长,求三角形面积。#include main()float a,b,c,s,area;scanf(%f%f%f,&a,&b,&c);s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c);printf(area=%.2fn,area);输入输入1,2,31,2,3会有会有正确结果吗?正确结果吗?如何避免发生如何避免发生此类错误此类错误如果任意两边之和大于第三如
2、果任意两边之和大于第三边才能构成三角形,即边才能构成三角形,即a+bc并且并且a+cb并且并且b+ca第第3 3章章 选择结构程序设计选择结构程序设计 关系运算符和关系表达式关系运算符和关系表达式 逻辑运算符和逻辑表达式逻辑运算符和逻辑表达式 if if 语句语句 switchswitch语句语句 程序举例程序举例3.1 if3.1 if语句语句1.运算符:运算符:、=、b)=c (ab)=c b+ca b+cb d=ab f=abc f=abc 要想表示与数学中的要想表示与数学中的abcabc等价的关系等价的关系怎么办?怎么办?一、关系运算一、关系运算3.1 if3.1 if语句语句二、逻辑
3、运算二、逻辑运算1.运算符运算符:&(且)、(且)、|(或)、(或)、!(非)(非)例如:例如:a&b 若若a、b均为均为真(非真(非0)时,时,a&b为为1 a|b 若若a、b其中之一为非其中之一为非0,a|b为为1 !a 若若a为非为非0,则,则!a为为0 例例:a=4,b=5 !a a&b a|b !a|b 4&0|2 53&2|8c&b=ca|b+c&b-c!(x=a)&(y=b)&0!(a+b)+c-1&b+c/2x&!xxy-1 !(非)!(非)算术运算符算术运算符关系运算符关系运算符&赋值运算符赋值运算符 高高低低010101练习练习2 2:a=1a=1,b=2b=2,c=3c=
4、3,d=4d=4,m=1m=1,n=2n=2 y=(m=ab)&(n=cd)y=(m=ab)&(n=cd)y=y=m=m=n=n=0 00 02 2注:在逻辑表达式的求解中,并不是所有的逻辑注:在逻辑表达式的求解中,并不是所有的逻辑运算都被执行,只是在必须执行下一个逻辑运算运算都被执行,只是在必须执行下一个逻辑运算符才能求出表达式的解时,才执行该运算符。符才能求出表达式的解时,才执行该运算符。如:如:a&b&ca&b&c a|b|c a|b|c3.1 if3.1 if语句语句三、三、if语句语句、if语句的语句的3种形式种形式 1if(表达式表达式)语句语句例:例:main()int x;sc
5、anf(%d,&x);if(x0)printf(“%d”,x);printf(abc);4545abc-7abc 2if(表达式表达式)语句语句 1 else 语句语句2表达式表达式真真假假语句语句表达式表达式真真假假语句语句1语句语句2 2例例1 1:输入一个整输入一个整数,若为偶数则输数,若为偶数则输出出“Yes”“Yes”,若为奇,若为奇数则输出数则输出“No”“No”。main()int a;scanf(%d,&a);if(a%2=0)printf(Yesn);else printf(Non);ifelse是一个语句是一个语句思考:思考:输入三角形的三边长,求三角形面积。输入三角形的三
6、边长,求三角形面积。#include main()float a,b,c,s,area;scanf(%f%f%f,&a,&b,&c);if(a+bc&a+cb&b+ca)s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c);printf(area=%.2fn,area);else printf(no);3.多分支多分支if(表达式表达式1)语句语句1else if(表达式表达式2)语句语句2else if(表达式表达式n)语句语句nelse 语句语句n+1NN表达式表达式1表达式表达式2语语句句2表达式表达式n语句语句n语句语句n+1YYNY语语句句1例例2:2:
7、计算分段函数,输入计算分段函数,输入x x的值后,的值后,请输出相应的请输出相应的y y值。值。#include math.h main()float x,y;scanf(%f,&x);if(x-10)y=5.0/29*fabs(x-7);else if(x12.6)y=log(16)/log(3)+cos(32*3.14/180);else y=(sqrt(2*x)-3.14*sin(x)/(exp(1)*x*x);printf(%fn,y);!注意!注意C C中表达式书写(中表达式书写(p25p25)【练习【练习】计算分段函数计算分段函数#include math.h main()floa
8、t x,y;scanf(%f,&x);if(x1&x12&x=27)y=3*x;printf(%fn,y);else printf(wuyiyi);(二)(二)if语句的嵌套语句的嵌套:在在 if 语句中又包含一个或多个语句中又包含一个或多个 if 语句称语句称为为 if语句的嵌套。语句的嵌套。if()if()语句语句1 else 语句语句2 else if()语句语句3 else 语句语句4 !注意注意 if 与与 else 的配对关的配对关系,系,else总是与它上面最近总是与它上面最近的未配对的的未配对的 if 配对配对,若,若if与与 else 的数目不一致,可以加的数目不一致,可以加
9、 来确定配对关系。来确定配对关系。例:有一函数例:有一函数 输入输入X值,输出值,输出Y值。值。y=-1 (x0)main()int x,y;scanf(%d,&x);if(x=0)if(x=0)y=0;else y=-1;else y=1;printf(x=%d,y=%dn,x,y);if(x=0)if(x0)y=1;else y=0;(三)条件运算符(三)条件运算符1.形式:形式:表达式表达式1?表达式表达式2:表达式表达式32.执行过程:如果表达式执行过程:如果表达式1为真,则条件表达式为真,则条件表达式取表达式取表达式2的值,否则取表达式的值,否则取表达式3的值。的值。例例 有以下有以
10、下if 语句语句:if(ab)max=a;else max=b;可以用条件运算符可以用条件运算符处理处理:max=(ab)?a:b;3.属性:三目、右结合、优先级高于属性:三目、右结合、优先级高于=若若w=1,x=2,y=3,z=4,则条件表达式则条件表达式wx?w:yb)a=b;if(bc)b=c;else c=b;c=a;2、当、当a=1,b=2,c=3时时,执行以下程序段后执行以下程序段后,a的值为的值为【】,b的值为的值为【】,c的值为的值为【】.if(ac)b=a;a=c;c=b;3、下面一段程序的输出结果是【、下面一段程序的输出结果是【】.int x=2;if(x)printf(T
11、RUE);else;printf(FALSE);a=2,b=1,c=2a=3,b=2,c=2TRUEFALSE1if(表达式表达式)语句语句 2if(表达式表达式)语句语句 1 else 语句语句23.if(表达式表达式1)语句语句1 else if(表达式表达式2)语句语句2 else if(表达式表达式m)语句语句m else 语句语句n!注意注意1、if 与与 else 的配对关系,的配对关系,else总是与它上面最近的总是与它上面最近的未配对的未配对的 if 配对配对。2、表达式可为、表达式可为常量常量、变变量量或或任意类型任意类型表达式。表达式。3、if或或else后面可使用后面可使
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 ppt 课件 选择 结构 程序设计
限制150内