当前位置: 首页 > 文档资料 > 学习 C 语言 >

if...else statement

优质
小牛编辑
133浏览
2023-12-01

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

语法 (Syntax)

C编程语言中if...else语句的语法是 -

if(boolean_expression) {
   /* statement(s) will execute if the boolean expression is true */
} else {
   /* statement(s) will execute if the boolean expression is false */
}

如果布尔表达式的计算结果为true ,则执行if block ,否则执行else block

C编程语言将任何non-zeronon-null值假定为true ,如果它zeronull ,则将其假定为false值。

流程图 (Flow Diagram)

C if ... else语句

例子 (Example)

#include <stdio.h>
int main () {
   /* local variable definition */
   int a = 100;
   /* check the boolean condition */
   if( a < 20 ) {
      /* if condition is true then print the following */
      printf("a is less than 20\n" );
   } else {
      /* if condition is false then print the following */
      printf("a is not less than 20\n" );
   }
   printf("value of a is : %d\n", a);
   return 0;
}

编译并执行上述代码时,会产生以下结果 -

a is not less than 20;
value of a is : 100

如果......其他如果...... else语句

if语句后面可以跟一个else if...else语句,这对于使用单个if ... else if语句测试各种条件非常有用。

当使用if ... else if..else语句时,要记住几点 -

  • 一个if可以有零个或一个其他的,它必须在任何其他if之后。

  • 如果是的话,if可以有零到多个,并且它们必须在else之前。

  • 一旦else成功,其余的其他if或者其他都将被测试。

语法 (Syntax)

C编程语言中if...else if...else语句的语法是 -

if(boolean_expression 1) {
   /* Executes when the boolean expression 1 is true */
} else if( boolean_expression 2) {
   /* Executes when the boolean expression 2 is true */
} else if( boolean_expression 3) {
   /* Executes when the boolean expression 3 is true */
} else {
   /* executes when the none of the above condition is true */
}

例子 (Example)

#include <stdio.h>
int main () {
   /* local variable definition */
   int a = 100;
   /* check the boolean condition */
   if( a == 10 ) {
      /* if condition is true then print the following */
      printf("Value of a is 10\n" );
   } else if( a == 20 ) {
      /* if else if condition is true */
      printf("Value of a is 20\n" );
   } else if( a == 30 ) {
      /* if else if condition is true  */
      printf("Value of a is 30\n" );
   } else {
      /* if none of the conditions is true */
      printf("None of the values is matching\n" );
   }
   printf("Exact value of a is: %d\n", a );
   return 0;
}

编译并执行上述代码时,会产生以下结果 -

None of the values is matching
Exact value of a is: 100