C 语言 If … Else 条件语句
条件与 If 语句
从 运算符 一章中,您了解到 C 语言支持数学中常见的逻辑条件:
- 小于: a < b
- 小于等于: a <= b
- 大于: a > b
- 大于等于: a >= b
- 等于: a == b
- 不等于: a != b
您可以使用这些条件为不同的条件执行不同的操作。
C 语言有以下条件语句:
- 如果指定的条件为 true,则使用
if
指定要执行的代码块 - 如果相同条件为 false,则使用
else
指定要执行的代码块 - 如果第一个条件为 false,则使用
else if
指定要测试的新条件 - 使用
switch
指定要执行的许多可选代码块
if 语句
如果条件为 true
,则使用 if
语句指定要执行的 C 语言代码块。
语法
if (condition) {
// 如果条件为 true,则要执行的代码块
}
请注意,if
是小写字母。大写字母(If 或 If)将生成错误。
在下面的实例中,我们测试两个值,以确定 20 是否大于 18。
如果条件为 true
,则输出(打印)一些文本:
实例
#include <stdio.h>
int main() {
if (20 > 18) {
printf("20 is greater than 18");
}
return 0;
}
我们也能够测试变量:
实例
#include <stdio.h>
int main() {
int x = 20;
int y = 18;
if (x > y) {
printf("x is greater than y");
}
return 0;
}
实例解释
在上面的例子中,我们使用两个变量 x 和 y 来测试 x 是否大于 y(使用 >
操作符)。因为 x 是20,y 是 18,我们知道 20 大于 18,所以我们在屏幕上输出 "x > y"。
else 语句
如果条件为 false
,则使用 else
语句指定要执行的代码块。
语法
if (condition) {
// 如果条件为 true,则要执行的代码块
} else {
// 如果条件为 false,则要执行的代码块
}
实例
#include <stdio.h>
int main() {
int time = 20;
if (time < 18) {
printf("Good day.");
} else {
printf("Good evening.");
}
return 0;
}
实例解释
在上面的实例中,时间(20)大于 18,因此条件为 false
。因此,我们转到 else
条件并在屏幕上输出 "Good evening"。如果时间少于 18,程序将打印 "Good day"。
else if 语句
如果第一个条件为 false
,则使用 else if
语句指定新条件。
语法
if (condition1) {
// 如果条件为 true,则要执行的代码块
} else if (condition2) {
// 如果条件 1 为 false,而条件 2 为 false,则要执行的代码块 is true
} else {
// 如果条件 1 为 false,条件 2 为 false,则要执行的代码块
}
实例
#include <stdio.h>
int main() {
int time = 22;
if (time < 10) {
printf("Good morning.");
} else if (time < 20) {
printf("Good day.");
} else {
printf("Good evening.");
}
return 0;
}
实例解释
在上面的示例中,时间(22)大于 10,因此第一个条件为 false
。else if
语句中的下一个条件也是 false
,因此我们转到 else
condition,因为 condition1 和 condition2 都是 false
,并输出到屏幕上 "Good evening"。
然而,如果时间是 14,我们的程序将打印 "Good day."
简写 If…Else (三元运算符)
还有一个缩写 if-else,它被称为 三值运算符,因为它由三个操作数组成。它可以用来用一行代码替换多行代码。它通常用于替换简单的 if-else 语句
语法
variable = (condition) ? expressionTrue : expressionFalse;
一般写法:
实例
#include <stdio.h>
int main() {
int time = 20;
if (time < 18) {
printf("Good day.");
} else {
printf("Good evening.");
}
return 0;
}
您也可以像这样简写:
实例
#include <stdio.h>
int main() {
int time = 20;
(time < 18) ? printf("Good day.") : printf("Good evening.");
return 0;
}