C 语言 if...else 语句
一个 if 语句 后可跟一个可选的 else 语句 ,else 语句在布尔表达式为 false 时执行
if...else 语法格式
C 语言中 if...else 语句语法格式如下
if(boolean_expression) { /* 如果布尔表达式 boolean_expression 为真将执行的语句 */ } else { /* 如果布尔表达式 boolean_expression 为假将执行的语句 */ }
- 如果布尔表达式
boolean_expression
为 true ,则执行 if 块内的代码 - 如果布尔表达式
boolean_expression
为 false ,则执行 else 块内的代码
注意
C 语言把任何 非零 和 非空 的值假定为 true ,把 零 或 null 假定为 false 。
C 语言 if...else 语句流程图
范例
/** * file: main.c * author: 简单教程(www.twle.cn) */ #include <stdio.h> int main () { // 定义局部变量 age int age = 28; // 使用 if 语句检查布尔条件 if( age < 18 ) { // 如果条件为真,则输出下面的语句 printf("你的年龄是: %d,一个豆蔻年华的时代\n" , age); } else { // 如果条件为假,则输出下面的语句 printf("你的年龄是: %d,一个自由翱翔的时代,未来的你,将取决你现在的努力\n" , age); } printf("age 的值是 %d\n", age); return 0; }
编译和运行上面的范例,输出结果如下
$ gcc main.c && a.out 你的年龄是: 28,一个自由翱翔的时代,未来的你,将取决你现在的努力 age 的值是 28
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 将不会被测试和执行
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 为真时执行 */ } else { /* 当上面条件都不为真时执行 */ }
范例
/** * file: main.c * author: 简单教程(www.twle.cn) */ #include <stdio.h> int main () { // 定义局部变量 age int age = 28; // 使用 if 语句检查布尔条件 if( age < 18 ) { // 如果条件为真,则输出下面的语句 printf("你的年龄是: %d,一个豆蔻年华的时代\n" , age); } else if ( age < 25 ) { // 如果条件为真,则输出下面的语句 printf("你的年龄是: %d,要么还在学校,要么刚刚毕业,一切都是懵懂的,无知,是我对这段时间最大的评价,也是最好的评价",age); } else if ( age < 30 ) { // 如果条件为真,则输出下面的语句 printf("你的年龄是: %d,已经是一个社会的小混混了,也许早已抹去了那段激情,开始娶妻生子,然而,重视少了些什么?",age); } else { // 如果条件为假,则输出下面的语句 printf("你的年龄是: %d,一个自由翱翔的时代,未来的你,将取决你现在的努力\n" , age); } printf("age 的值是 %d\n", age); return 0; }
编译和执行以上程序,输出结果如下
$ gcc main.c && a.out 你的年龄是: 28,已经是一个社会的小混混了,也许早已抹去了那段激情,开始娶妻生子,然而,重视少了些什么?age 的值是 28