1、第四章第四章 具有选择结构的具有选择结构的 C 程序设计程序设计我们在前章所介绍的简单我们在前章所介绍的简单 C程序,是从程序结构的角度而言是简单的,所程序,是从程序结构的角度而言是简单的,所能解决的问题也是有限的但实际工作中,经常还会遇到能解决的问题也是有限的但实际工作中,经常还会遇到根据不同情况进行不同处理的问题,这就需要计算机要作根据不同情况进行不同处理的问题,这就需要计算机要作出出 判断判断 和和 选择选择 ,而根据不同的条件来执行不同的程序段。在本,而根据不同的条件来执行不同的程序段。在本章中,将介绍几种能实现判断和选择的语句以及怎样章中,将介绍几种能实现判断和选择的语句以及怎样利用
2、这些语句来实现利用这些语句来实现 C 的程序设计的程序设计第三章 简单的 C 程序设计4.1 if 语句if 语句是用来判断所给定的条件是否满足,根据判定的结果 (真或假真或假 )来决定执行给出的两种操作之一。语句格式 1 : if (表达式表达式 ) 语句;语句; 语句功能 : 根据表达式的结果来决定是否执行格式中的语句。 if 语句的三种格式语句的三种格式1、 表达式可以是任意表达式 2、 语句只为一条语句,若超过一条,则采用复合语句 3、 当表达式的值为 非非 0 时代表 “真真 ”; 0 时代表 “假假 ”语句格式 2 : if (表达式表达式 ) 语句语句 1;else 语句语句 2
3、; 语句功能 : 如果表达式的值为真(如果表达式的值为真( 即非即非 0)则执行)则执行语句语句 1,否则执行语句,否则执行语句 2。 # include “stdio.h”main() int a, b ;scanf( “%d %dn”, if (ab) printf(“a=%dn”, a) ;else printf(“b=%dn”, b); 语句语句 1 语句语句 2表达式表达式 ?Y N向计算机输入向计算机输入 a,b 两个整数,然后判两个整数,然后判断断 ab , 若若 ab 则输出则输出 a 的值。的值。 举例举例# include “stdio.h”main() int a, b
4、;scanf( “%d %dn”, if (ab) printf(“a=%dn”, a ); 关系表达式关系表达式 输出函数调用语句输出函数调用语句语句格式 3 :if (表达式表达式 1) 语句语句 1;else if (表达式表达式 2) 语句语句 2;else if (表达式表达式 3) 语句语句 3; . else 语句语句 n; 语句功能 : (else if 结构结构 ) 用于实现多分支情况的处理。即在多个分支用于实现多分支情况的处理。即在多个分支中仅执行表达式为中仅执行表达式为 非非 0值的那个值的那个 if下的语句;若所有表达式都下的语句;若所有表达式都 是是 0 值,则执行最
5、后一个值,则执行最后一个 else 下的语句。最后一个下的语句。最后一个 else 及其及其 下面的语句也可以不存在。下面的语句也可以不存在。 # include “stdio.h”main() int g ;scanf( “%d n”, if (a=1)printf(“i=%, j=%d, a=%dn”,i, j, a);20smain() int a,b,c;a=10, b=50, c=30;if (ab)a=b,b=c; c=a;printf(“a=%d b=%d c=%dn”,a, b, c);21A) a=10 b=50 c=10 B) a=10 b=30 c=10C) a=50 b=30 c=10 D) a=50 b=30 c=50 3、 main() int i= -1;( i 0) y= 1; else y= -1;else y= 0;printf(“x=%d,y=5.2fn”,x,y) ; -1 ( x0 )