在C语言中,程序可以根据特定的条件来选择执行哪一部分代码。这种能力被称为决策控制(decision making),而用于实现这一功能的语句被称为条件语句(conditional statements)。这些语句会评估一个或多个条件,并决定是否执行某段代码块。
C
CODEBLOCK_f644cfbd
Output
Start the show
在上述程序中,只有当人数大于 50 时,节目才会开始。这一点在 if 语句(一种条件语句)中通过条件 (num > 50) 指定了。我们可以试着将 num 的值减少到 50 以下,然后重新运行代码看看结果。
目录
C语言中的条件语句类型
在上面的程序中,我们使用了 if 语句,但在 C 语言中还有许多不同类型的条件语句可供我们使用:
1. C语言中的 if 语句
if 语句 是最简单的决策控制语句。它用于决定是否执行某个特定的语句或语句块,即:如果某个条件为真(true),则执行该语句块,否则不执行。
条件是指任何计算结果为真或假(或者可以转换为真或假的值)的表达式。
C
CODEBLOCK_8972d843
Output
Eligible for vote
() 括号内的表达式是条件,而 {} 花括号内的语句集合是它的主体(body)。只有当条件为真时,主体才会被执行。
> 如果主体中只有一条语句,{} 花括号可以省略。
2. C语言中的 if-else 语句
单独的 if 语句告诉我们:如果条件为真,它将执行一段语句块;如果条件为假,它就不执行。但是,如果我们想在条件为假时做点别的什么呢?这就轮到 C 语言的 else 语句出场了。我们可以将 else 语句与 if 语句结合使用,以便在条件为假时执行另一段代码。if-else 语句 包含两个块,一个用于处理表达式为真的情况,另一个用于处理表达式为假的情况。
C
CODEBLOCK_61edb55c
Output
Not Eligible for vote
由于 if 语句中的条件为假,因此跟随 else 语句的代码块被执行了。
3. C语言中的嵌套 if-else
C语言中的嵌套 if(Nested if)是指作为另一个 if 语句目标的 if 语句。嵌套 if 语句意味着在一个 if 语句内部包含另一个 if 语句。是的,C 允许我们在 if 语句内部嵌套 if 语句,即我们可以把一个 if 语句放在另一个 if 语句里面。
C
CODEBLOCK_c49452cb
Output
Not eligible to vote (Under 18)
not a teenager
4. C语言中的 if-else-if 阶梯
当用户需要在多个选项中做出决定时,可以使用 if else if 语句。C 语言的 if 语句是从上到下执行的。一旦控制 if 的某个条件为真,与该 if 关联的语句就会被执行,而剩下的 C else-if 阶梯将被跳过。如果所有条件都不为真,那么将执行最后的 else 语句。if-else-if 阶梯类似于 switch 语句。
C
CODEBLOCK_8383489f
Output
You can vote
5. C语言中的 switch 语句
[switch case 语句](https://www.geeksforgeeks.org/c/c-switch-statem