C If ... Else 条件语句

条件和 If 语句

您从运算符比较章节中了解到,C 支持数学中的常见逻辑条件:

  • 小于:a < b
  • 小于或等于:a <= b
  • 大于:a > b
  • 大于或等于:a >= b
  • 等于 a == b
  • 不等于:a != b

您可以使用这些条件为不同的决策执行不同的操作。

C 有以下条件语句:

  • 使用if指定要执行的代码块,如果指定条件为真
  • 使用else指定要执行的代码块,如果相同条件为假
  • 如果第一个条件为假,则使用 else if 指定要测试的新条件
  • 使用 switch 指定要执行的许多替代代码块

if 语句

使用 if 语句指定在条件为 true 时要执行的 C 代码块 .

语法

if (condition) {
  // 条件为 true 时执行的代码块
}

请注意,if 是小写字母。 大写字母(If 或 IF)会产生错误。

在下面的例子中,我们测试两个值来判断 20 是否大于 18。如果条件为 true,打印一些文本:

实例

if (20 > 18) {
  printf("20 is greater than 18");
}
亲自试一试 »

我们也可以测试变量:

实例

int x = 20;
int y = 18;
if (x > y) {
  printf("x is greater than y");
}
亲自试一试 »

示例说明

在上面的示例中,我们使用两个变量 xy 来测试 x 是否大于 y(使用 > 运算符)。 由于 x 是 20,y 是 18,并且我们知道 20 大于 18,所以我们在屏幕上打印"x 大于 y"。


else 语句

使用 else 语句指定在条件为 false 时要执行的代码块。

语法

if (condition) {
  // 条件为 true 时执行的代码块
} else {
  // 条件为 false 时要执行的代码块
}

实例

int time = 20;
if (time < 18) {
  printf("Good day.");
} else {
  printf("Good evening.");
}
// 输出 "Good evening."
亲自试一试 »

示例说明

在上面的例子中,时间(20)大于18,所以条件是false。 因此,我们转到 else 条件并打印到屏幕"Good evening"。 如果时间小于 18,程序将打印"Good day"。


else if 语句

如果第一个条件为 false,则使用 else if 语句指定新条件。。 p>

语法

if (condition1) {
  // 如果条件 1 为 true,则要执行的代码块
} else if (condition2) {
  // 如果条件 1 为 false 且条件 2 为 true,则要执行的代码块
} else {
  // 如果条件1为 false 且条件2为 false 时要执行的代码块
}

实例

int time = 22;
if (time < 10) {
  printf("Good morning.");
} else if (time < 20) {
  printf("Good day.");
} else {
  printf("Good evening.");
}
// 输出 "Good evening."
亲自试一试 »

示例说明

在上面的例子中,时间 (22) 大于 10,所以 第一个条件falseelse if 语句中的下一个条件也是 false,所以我们继续进行 else 条件,因为 condition1condition2 都是 false - 并打印到屏幕上"Good evening"。

但是,如果时间是 14 点,我们的程序会打印"Good day"。