关系表达式和逻辑表达式 (1)PPT推荐.ppt
- 文档编号:13051171
- 上传时间:2022-10-03
- 格式:PPT
- 页数:18
- 大小:1.23MB
关系表达式和逻辑表达式 (1)PPT推荐.ppt
《关系表达式和逻辑表达式 (1)PPT推荐.ppt》由会员分享,可在线阅读,更多相关《关系表达式和逻辑表达式 (1)PPT推荐.ppt(18页珍藏版)》请在冰豆网上搜索。
,在我们编写程序的时候,需要控制程序根据条件来选择执行相关的操作。
很多时候,需要判断的条件往往不止一个,比如从键盘输入一个数,我们要判断它是否大于0,并且小于10,这里的“大于”,“小于”就是关系运算,“并且”就是逻辑运算。
C语言为我们提供了逻辑运算和关系运算,用它们构成复杂的控制条件,来实现程序的选择结构和循环结构。
程序设计条件的表示,关系运算和我们数学中的比较运算基本一致,它们用于两个操作数(整数、浮点数、字符数据)的比较。
C语言为我们提供了6种关系运算符:
关系运算符和关系表达式,关系运算符都双目运算符,满足从左到右的结合律。
它们的优先关系如下:
1、关系运算符的优先级要低于算术运算符。
比如语句:
c=b+2;
则先计算b+2的值,再和c比较。
2、关系运算符的优先级高于赋值运算符。
比如语句“a=bc;
”,先进行关系运算“bc”,成立(真),则bc值为1,不成立(假),则bc值为0;
然后再做赋值运算,把1或0赋值给a。
3、关系运算符、=、=的优先级要高于=、!
=的优先级,同级之间优先级相同。
比如语句“ca!
=b;
”,先计算“ca”,再算“!
=”的值,等价于“(ca)!
=b”。
4、除了数学运算对象之外,还可以使用关系运算符来比较字符数据,char值将被强制转换成int值以进行比较。
5、不能直接使用关系运算符比较字符串。
关系运算符的运算,关系表达式就是用关系运算符把两个表达式连接起来的式子,它的一般形式是:
表达式1关系运算符表达式2例如,判断一个学生成绩是否及格。
定义变量:
score表示学生成绩,判断“score=60”表达式是否为真,为真其就是1,为假就是0。
当score=86,“score=60”为“真”,表达式的值为1;
当score=54,“score=60”为“假”,表达式的值为0;
总结来讲,关系表达式的值只有两种可能:
关系成立,则关系表达的值为“真”(值为1);
关系不成立,则关系表达式的值为“假”(值为0)。
在C语言中用非0值表达“真”,用0表达“假”。
关系表达式,想要判断整数sum的取值是否满足:
0sum100;
千万不能写成“0=0并且sum=100来表达。
也就是说,除了使用关系表达式表示简单的条件以外,还可以使用逻辑运算与、或、非来创建更为复杂的条件。
逻辑运算符和逻辑表达式,C语言的逻辑运算符有3种:
逻辑运算符,逻辑与运算符&
是用于两个关系表达式时,只有当每个表达式都为“真”时该条件才为“真”。
逻辑或运算符|也是用于两个表达式的,只要两个表达式至少有一个是“真”,该条件就为“真”。
非运算符!
将把表达式更改为它的相反状态,也就是就,如果表达式为“真”,那么它的非运算的值就为“假”;
如果表达式开始为“假”,那么它的非运算的值就为“假”。
前面表格中的“a13&
d20”就是逻辑表达式,逻辑表达式的值取1(真),或者0(假)。
一个逻辑表达式可以包含多个逻辑运算符,它们的优先级顺序是:
“!
”的优先级最高,“&
”次之,“|”的优先级最低。
逻辑运算符“&
”、“|”的优先级低于所有关系运算符,而“!
”的优先级高于所有算术运算符。
逻辑表达式,使用C的关系运算表达式可能会遇到与浮点数(单精度或双精度)相关的微妙的数学精度问题。
因为计算机存储这些数据的方式不同,所以应该避免使用关系运算符“=”来衡量浮点数的等同关系,原因是,很多十进制小数(例如:
0.1)不能使用有限的位数精确地以二进制表示,因此,要测试这些数字的完全等同关系将会失败。
当需要测试非整数值的等同关系时,最好要求运算对象之差的绝对值小于一个非常小的值,因此,对于实际的运算对象,常规表达式operandOne=operandTwo应该被下面的条件所取代fabs(operandOne-operandTwo)EPSILON其中EPSILON是一个被设置为任意可接受的足够小的值(如0.0000001或其他用户选定的值)的命名常量。
因此,如果两个运算对象之差小于EPSILON的值,那么这两个运算对象被认为是最基本相等。
数学的精度问题,例:
如果x和y是浮点变量,那么条件x/y=0.35应该以下面的方式来编程:
abs(x/y-0.35)0.0000001其后面的条件可以确保以二进制非整数数字所带来的少量误差不会影响到测试条件的赋值结果。
数学的精度问题举例,编写用来表示下列条件的关系表达式或逻辑表达式(使用你自己选择的变量名):
一个人的年龄为30岁age=30一个人的体温大于98.6华氏度heat98.6一个人的身高小于6英尺height6.0目前为12月month=12输入的字母为mkey=m,编写条件的练习
(一),一个人的年龄为30岁且身高大于6尺age=30&
height6语文成绩80分以上或且数学成绩80分以上(含80分)chinese=80|math=80目前为1月15日month=1&
day=150x100x=0&
x5|x25年份为闰年(year%4=0&
year%100!
=0)|year%400=0,编写条件的练习
(二),整数x大于5x5或x=6e不等于0(不为空)e!
=0或ee为0(e为空)e=0或!
e,编写条件的练习(三),确定下列表达式的值(假设a=5,b=2,c=4,d=5)1、a=512、b*d=c*c03、d%b*c5|c%b*d71,求解表达式的值,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 关系表达式和逻辑表达式 1 关系 表达式 逻辑