if语句
if语句的一般形式:
- (1)
if(表达式)语句1 (没有else子句部分) - (2)
if(表达式)
语句1
else
语句2 - (3)
if(表达式1)语句1 (在else部分嵌套了多层的if语句)
else if(表达式2)语句2
else if(表达式3)语句3
…
else if(表达式m)语句m
else 语句m+1**
例如:
if (num>500) cost=0.15;
else if (num>300) cost=0.10;
else if(num>100) cost=0.075;
else if(num>50) cost=0.05;
else cost=0
即相当于:
if (num>500)
cost=0.15;//语句末尾必须要有分号
else
if (num>300) //在if语句的else部分内嵌套了一个if语句
cost=0.10;
else
if(num>100)
cost=0.075;
else
if(num>50)
cost=0.05;
else
cost=0
当然想要学习if语句我们需要了解关系运算符和关系表达式
- 关系运算符
① < | 小于 |
---|---|
② <= | 小于等于 |
③ > | 小于 |
④ >= | 大于等于 |
⑤ == | 等于 |
⑥ != | 不等于 |
其中:
(1)① ② ③ ④ 的优先级相同(高)
(2)⑤ ⑥ 的优先级相同(低)[其中⑤ ⑥优先级低于① ② ③ ④]
(3)关系运算符的优先级低于算数运算符
(4)关系运算符的优先级高于赋值运算符
其关系图:
- 逻辑运算符
运算符 | 含义 | 举例 | 说明 |
---|---|---|---|
&& | 与 | a&&b | 如果a和b都为真,则结果为真,否则为假 |
II | 或 | aIIb | 如果a和b都为假时,则结果为假,否则为真 |
! | 非 | !a | 如果a为假,则!a为真,反之 |
其中“&&”和“||”是双目(元)运算符,它要求有两个运算对象(操作数),如(a>b)&&(x>y)
,(a>b)||(x>y)
.
而“!”是单目运算符,只要求有一个运算对象,如!(a>b)
其中 优先级图
- 选择结构的嵌套
一般形式如下:
if()
if () 语句1//内嵌if
else 语句2//内嵌if
else
if() 语句3//内嵌if
else 语句4//内嵌if
采用嵌套的if语句处理
#include <stdio.h>
int main(){
int x,y;
scanf("%d",&x);
if(x<0)
y=-1;
else
if(x==0) y=0;
else y=1;
printf("x=%d,y=%d\n",x,y);
return 0;
}