关于 If 语句

if 语句用于有条件地执行一条语句或语句块,有三种基本形式。第一种形式(if)用于在表达式为真时执行一条语句,否则不执行任何操作。第二种形式(if/else)用于根据表达式是否为真执行两条独立语句之一。最后一种形式(if/else if/else)本质上将一系列条件链接在一起,以确定应执行语句集合中的哪一条语句。

条件 语句
if 第一种 if 语句的格式为 ``` if( expression )
statement 例如, if(x>0)
y=sqrt(x); 此语句首先计算表达式 x>0。如果此表达式为 **true**,则执行语句 y=sqrt(x);。如果表达式 x>0 为 **false**,则 **if** 语句不执行任何操作。注意,语句 y=sqrt(x); 以分号结尾。所有语句必须以分号结尾,除非该语句是语句块,如下例所示: if(x>0) {
y=sqrt(x);
z=x/(1+x);
} ``` 语句块中的每条语句都以分号结尾。但是,块本身除了右大括号外不包含任何终止标点。在可以插入语句的任何位置,都可以插入语句块。
if/else 第二种 if 语句的格式为 ``` if( expression )
statement1
else
statement2 例如, if(x>0)
y=sqrt(x);
else
y=0; 此语句的第一部分行为与前一示例完全相同。也就是说,语句首先计算表达式 x>0。如果此表达式为 **true**,则执行语句 y=sqrt(x);。但是,如果表达式为 **false**,则执行语句 y=0;。与前一形式的 **if** 语句一样,每个条件语句都可以是语句块。例如, if(x>0) {
y=sqrt(x);
z=x/(1+x);
}
else {
y=0;
z=0;
} ```
if/else if/else 最后一种 if 语句的格式为 ``` if( expression1 )
statement1
else if( expression2 )
statement2
. . .
else
statement3 完整语句中可以有任意数量的 else if 部分。此外,最后的 else 是可选的。例如, if(x>0)
y=sqrt(x);
else if(x==0)
y=-1;
else
y=0; ``` 此语句首先计算表达式 x>0。如果为真,则执行语句 y=sqrt(x);。如果表达式为假,则计算表达式 x==0。如果此表达式为真,则执行语句 y=-1;。最后,如果所有条件表达式都不为真,则执行最后一条语句 y=0;。
IF 原语 可以使用 IF 原语而不是 if 语句来创建条件。语句 ``` if( expression )
statement 等同于 IF( expression, statement ) 此外,语句 if( expression )
statement1
else
statement2 等同于 IF( expression, statement1, statement2 ) 注意,使用 **IF** 原语时单词 *IF* 为大写字母,而使用 **if** 语句时为小写字符。例如,语句 if(x>0)
y=sqrt(x);
else
y=0; 等同于 IF(x>0,y=sqrt(x),y=0); 使用 **IF** 原语,可以通过将 y= 移到 **IF** 前面来进一步简化此表达式: y=IF(x>0,sqrt(x),0); ```