C if…else 语句

一个 if 语句 后可跟一个可选的 else 语句,else 语句在布尔表达式为 false 时执行。

语法

C 语言中 if…else 语句的语法:

  1. if(boolean_expression)
  2. {
  3. /* 如果布尔表达式为真将执行的语句 */
  4. }
  5. else
  6. {
  7. /* 如果布尔表达式为假将执行的语句 */
  8. }

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

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

流程图

C 中的 if...else 语句

实例

  1. #include <stdio.h>
  2. int main ()
  3. {
  4. /* 局部变量定义 */
  5. int a = 100;
  6. /* 检查布尔条件 */
  7. if( a < 20 )
  8. {
  9. /* 如果条件为真,则输出下面的语句 */
  10. printf("a 小于 20\n" );
  11. }
  12. else
  13. {
  14. /* 如果条件为假,则输出下面的语句 */
  15. printf("a 大于 20\n" );
  16. }
  17. printf("a 的值是 %d\n", a);
  18. return 0;
  19. }

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

  1. a 大于 20
  2. 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 语句的语法:

  1. if(boolean_expression 1)
  2. {
  3. /* 当布尔表达式 1 为真时执行 */
  4. }
  5. else if( boolean_expression 2)
  6. {
  7. /* 当布尔表达式 2 为真时执行 */
  8. }
  9. else if( boolean_expression 3)
  10. {
  11. /* 当布尔表达式 3 为真时执行 */
  12. }
  13. else
  14. {
  15. /* 当上面条件都不为真时执行 */
  16. }

实例

  1. #include <stdio.h>
  2. int main ()
  3. {
  4. /* 局部变量定义 */
  5. int a = 100;
  6. /* 检查布尔条件 */
  7. if( a == 10 )
  8. {
  9. /* 如果 if 条件为真,则输出下面的语句 */
  10. printf("a 的值是 10\n" );
  11. }
  12. else if( a == 20 )
  13. {
  14. /* 如果 else if 条件为真,则输出下面的语句 */
  15. printf("a 的值是 20\n" );
  16. }
  17. else if( a == 30 )
  18. {
  19. /* 如果 else if 条件为真,则输出下面的语句 */
  20. printf("a 的值是 30\n" );
  21. }
  22. else
  23. {
  24. /* 如果上面条件都不为真,则输出下面的语句 */
  25. printf("没有匹配的值\n" );
  26. }
  27. printf("a 的准确值是 %d\n", a );
  28. return 0;
  29. }

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

  1. 没有匹配的值
  2. a 的准确值是 100