内容正文:
第2章 C语言基础
2.1 C语言概述
2.2 C语言语法基础
2.4 C语言运算符与表达式
2.3 C语言的数据类型
大学C/C++语言程序设计程序设计 第2章 C语言基础
关系表达式:关系运算符将表达式连接起来的式子。
6种关系运算符:< <= >= > == !=
优先级: < <= >= > == !=
(6) (7)
结合性:自左至右
表达式的值:若为真,则结果为1;
若为假,则结果为0。
2.4.3 关系运算符和关系表达式
大学C/C++语言程序设计程序设计 第2章 C语言基础
例:int a=3,b=2,c=1,d;
3>5 的值为
3<4>2 的值为
3+4<3*4 的值为
(a>b)==c 的值为
d=a>b>c 的值为
数学表达式1<x<5在计算机中应写为:1<x && x<5
0
0
1
算术运算符优先级高于关系运算符
注意
计算机中1<x<5怎样执行?
思考
0
1
大学C/C++语言程序设计程序设计 第2章 C语言基础
先判断x>1是否成立,再判断0<5或1<5是否成立。
1.3种逻辑运算符:&& || ! (与、或、非)
逻辑量:可以是整型、实型、字符型
0——假 非0——真
如:0、0.0、‘\0’、NULL都代表假。
2.4.4 逻辑运算符和逻辑表达式
2.逻辑表达式:逻辑运算符将表达式连接起来
优先级:! && ||
(2) (11) (12)
结合性:自左至右;
表达式的值:若为真,则结果为1;
若为假,则结果为0。
大学C/C++语言程序设计程序设计 第2章 C语言基础
例:int a=5; float b=3.5;
!a (结果0) !(a<b) (结果1)
&&:只要有一个为假,结果则为假;
a && b (结果1) !a&&b (结果0)
!a&&!b (结果0) !(a&&b) (结果0)
||:只要有一个为真,结果则为真;
a||b (结果1) !a||b (结果1)
!a||!b (结果0) !(a||b) (结果0)
(a<b) && (a>0) (结果0)
(a<b) || (a>0) (结果1)
大学C/C++语言程序设计程序设计 第2章 C语言基础
!
算术运算符
关系运算符
&&和||
赋值运算符
4 -
1
8 <
1
0
1
5 > 3 && 2 || 8 < 4 - !5
高
低
0
4
&& 2
||
不同表达式的优先级:
例如:
大学C/C++语言程序设计程序设计 第2章 C语言基础
短路原则:
在逻辑表达式的求解中,并不是所有的逻辑运算符都被执行,只是在必须执行下一个逻辑运算符才能求出表达式的解时,才执行该运算符。
例如:
(1)a = 0; b = 1;
c = a++ && ( b = 3 );
结果:a为1,b为1,c为0。
(2)a = 1; b = 1; c=0;
d = --a ¦¦ b-- ¦¦ (c = b+3 );
结果:a为0,b为0,c为0,d为1。
大学C/C++语言程序设计程序设计 第2章 C语言基础
1.条件运算
形式为: <表达式1> ? <表达式2>:<表达式3>
求值规则和表达式的值:
2.4.5 其它运算符
假(0),取表达式3的值
表达式1的值
例:int max,a=5;b=3;c=9
max