文档介绍:第五章选择结构程序设计
流程图有三种基本结构:顺序结构、选择结构、循环结构。
其中选择结构和循环结构在C语言中都有相
应的语句来实现。选择结构通常用if语句来完成。
if 语句有几种格式,例如其中之一:
if (表达式) 语句1 else 语句2
例如:int a;
scanf(“%d”, &a) ;
if (a<0) printf(“a=%d \n”, -a);
else printf(“a=%d \n”, a);
在比如:int a;
scanf(“%d”,&d);
if(a>=0 and a<=100) printf(“a=%”,-a);
else printf(“a=%d”,a);
关系运算符和表达式
关系运算符
种类:< 、<= 、= =、>=、>、!=
结合方向:自左向右
优先级别:
<
<=
>
>=
= =
!=
优先级6(高)
优先级7(低)
例 c>a+b //c>(a+b)
a>b!=c //(a>b)!=c
a==b<c //a==(b<c)
a=b>c //a=(b>c)
关系表达式的值:是逻辑值“真”或“假”,用1和0表示
例 int a=3,b=2,c=1,d,f;
a>b
(a>b)= =c
b+c<a
d=a>b
f=a>b>c
<
>
//表达式值1
//表达式值1
//表达式值0
//d=1
//f=0
☆逻辑运算符和表达式
逻辑运算符:! (逻辑非)、&&(逻辑与) 、|| (逻辑或)
其中: &&(逻辑与) 、||(逻辑或)为二目运算符,
例如: a && b a || b
! (逻辑非)为单目运算符
例如: !a
逻辑运算符功能:
&&(逻辑与):例如:a && b 当a 、b 都是真时值为真,有一个是假或两个都是假时值为假。
|| (逻辑或): 例如:a || b 当a、b中至少有一个是真时值为真,两个都是假时值为假。
! (逻辑非): 例如: !a 当 a 为真时值为假, 当a 为假时值为
真。
a
b
!a
!b
a&&b
a||b
真
假
真
假
假
假
真
真
C语言中,运算量: 0表示“假”,
非0表示“真”,
运算结果: 0表示“假”,
1表示“真”,
<
>
真
假
假
假
假
假
真
真
假
假
真
真
真
假
真
真
逻辑运算符得值总表(真值表):
! (2)
&& (11)
|| (12)
高
低
例 a<=x && x<=b
a>b&&x>y
a==b||x==y
!a||a>b
优先级:
结合方向:
! :从右向左
&& :从左向右
|| :从左向右
<
>
// (a<=x) && (x<=b)
//(a>b)&&(x>y)
//(a==b)||(x==y)
//(!a)||(a>b)
! (2)
&& (11)
|| (12)
高
低
优先级:
结合方向:
! :从右向左
&& :从左向右
|| :从左向右
例 a=4;b=5;
!a
a&&b
a||b
!a||b
4&&0||2
5>3&&2||8<4-!0
‘c’&&‘d’
值为1
值为0
值为1
值为1
值为1
值为1
//(5>3)&&2||(8<(4-(!0))) 值为1
P
A
B
真
假
P
B
A
真
假
选择结构
k
A1
A2
Ai
An
k=k2
k=k1
k=kn
k=ki
...
...
二选一
分支选择结构
多分支选择结构
选择型程序设计
If 语句(条件选择语句)
if语句的三种形式
形式一:
格式:if (表达式)
语句
执行过程:
表达式
语句
非0
=0
例:
if (x>y)
printf(“%d”,x);
形式二:
格式:if(表达式1)
语句1
else
语句2
执行过程:
表达式
语句1
语句2
非0
=0
例:if (x>y) max=x;
else max=y;