if语句被称为分支语句(branching statement)或者选择语句(selection statement),因为它相当于一个交叉点,程序要在两条分支中选择一条执行。
if语句的通用形式:
if(expression)
statement;
如果expression为真(非0),则执行statement,否则跳过。与whlile循环一样,statement可以是一条简单语句或复合语句。if和while的结构很相似,主要的区别:
if | 如果满足条件可以执行,只能测试和执行一次 |
while | 如果满足条件,可以测试和执行多次 |
通常,expression是关系表达式。statement部分可以是一条简单句,也可以是用花括号括起来的复合语句。例如:
if (a>b)
printf("Hello,World!\n");
printf("Hello") //这条语句不受if的控制
if (b>c)
{
printf("My name is ");
printf("Li Hua"); //这条语句受if的控制
}
注:默认if语句只控制一行语句,多行语句需要使用花括号。
if else语句
if else 语句的通用形式:
if (expression)
statement1;
else
statement2;
如果expression为真或1,执行stateent1,如果expression为假或0,执行statement2。
if else语句可以在两条语句之间做选择,一个简单的示例:
#include <stdio.h>
int main(void)
{
int a = 1;
if (a == 2) //成立则下一个语句printf,否则跳转到else下面的printf语句。
printf("Hello");
else
printf("World");
return 0;
}
第一个if语句如果成立,则输出 Hello, 否则输出 World。