如果布尔表达式为 true ,则执行 if 块内的代码。如果布尔表达式为 false ,则执行 else 块内的代码。

C 语言把任何 非零 非空 的值假定为 true ,把 null 假定为 false

#include < stdio.h > int main ( ) /* 局部变量定义 */ int a = 100 ; /* 检查布尔条件 */ if ( a < 20 ) /* 如果条件为真,则输出下面的语句 */ printf ( " a 小于 20 \ n " ) ; /* 如果条件为假,则输出下面的语句 */ printf ( " a 大于 20 \ n " ) ; printf ( " a 的值是 %d \ n " , a ) ; return 0 ;

当上面的代码被编译和执行时,它会产生下列结果:

a 大于 20 a 的值是 100

if...else if...else 语句

一个 if 语句后可跟一个可选的 else if...else 语句,这可用于测试多种条件。

当使用 if...else if...else 语句时,以下几点需要注意:

  • 一个 if 后可跟零个或一个 else,else 必须在所有 else if 之后。
  • 一个 if 后可跟零个或多个 else if,else if 必须在 else 之前。
  • 一旦某个 else if 匹配成功,其他的 else if 或 else 将不会被测试。
  • C 语言中的 if...else if...else 语句的语法:

    if(boolean_expression 1) /* 当布尔表达式 1 为真时执行 */ else if( boolean_expression 2) /* 当布尔表达式 2 为真时执行 */ else if( boolean_expression 3) /* 当布尔表达式 3 为真时执行 */ /* 当上面条件都不为真时执行 */ #include <stdio.h>
    int main ( )
    /* 局部变量定义 */
    int a = 100 ;
    /* 检查布尔条件 */
    if ( a == 10 )
    /* 如果 if 条件为真,则输出下面的语句 */
    printf ( "a 的值是 10 \n " ) ;
    else if ( a == 20 )
    /* 如果 else if 条件为真,则输出下面的语句 */
    printf ( "a 的值是 20 \n " ) ;
    else if ( a == 30 )
    /* 如果 else if 条件为真,则输出下面的语句 */
    printf ( "a 的值是 30 \n " ) ;
    /* 如果上面条件都不为真,则输出下面的语句 */
    printf ( "没有匹配的值 \n " ) ;
    printf ( "a 的准确值是 %d \n " , a ) ;
    return 0 ;

    当上面的代码被编译和执行时,它会产生下列结果:

    没有匹配的值 a 的准确值是 100