第四章选择结构设讣 4.1选择结构简介 4.2if语 4.3 switch语旬 4.4选择结构程序示例
4.2 if 语句 4.3 switch 语句 4.1 选择结构简介 4.4 选择结构程序示例 第四章 选择结构设计
4.1选择结构简介 真 假 P 真 假 二分支选择结构 A B B k kkn kk1 k2 kki ●多分支选择结构 Al a2 An
P A B 真 假 P A B 真 假 k A1 A2 Ai An k=k2 k=k1 k=kn k=ki ... ... ⚫二分支选择结构 ⚫多分支选择结构 4.1 选择结构简介
42近语句 形式 expr 格式:if( expression) 非0 statement statement 执行过程 例:if(x>y) ●形式二 printf(" % X) 0 ◆格式:if( expression) expr statement1 else statement 1 statement2 statement2 ◆执行过程 if(x>y) maxX else max y
形式一: 格式:if (expression) statement 执行过程: expr statement 非0 =0 例:if (x>y) printf(“%d”,x); expr statement1 statement2 ⚫形式二: 非0 =0 ◆格式:if (expression) statement1 else statement2 ◆执行过程:例:if (x>y) max=x; else max=y; 4.2 if 语句
if expr1) statement 1 形式三: else if (expr2) statement2 else if (expr3) statements ◆执行过程 else statement 列:if( salary>1000) index. 4 else if (salary>800) index.3 else if (salary>600) index-=0. 2 else if (salary>400) index=0. 1 else index=O statemnt1 statemnt2 statemnt3statemntn
形式三: if ( expr1 ) statement1 else if (expr2 ) statement2 else if (expr3 ) statement3 …... [ else statementn ] expr1 statemnt1 非0 =0 expr2 expr3 statemnt2 statemnt3 statemntn 非0 非0 =0 =0 ◆执行过程: 例:if (salary>1000) index=0.4; else if (salary>800) index=0.3; else if (salary>600) index=0.2; else if (salary>400) index=0.1; else index=0;
●对If语句的说明 ◆if后面的表达式类型任意,必须用 ◆语旬可以是复爸语创(ab&&x=y) printf( a=b,x=y) ◆ele子旬(可选)是翻句pint(“OK”) 一部分,必须与劝像 printf(%d,a) 人mm f(x)<if(x!=0) 例考處下面程序的输出结果:fx)fx=0) #include <stdio. h main int xy scanf(%/od, %d, &x, &y) if(x>y) 2 y-x, Compile error Ⅹ++;y++ printf(" %d, %dn,xy)
如:if(a==b&&x==y) printf(“a=b,x=y”); if(3) printf(“OK”); if(‘a’) printf(“%d”,’a’); if(x) if(x!=0) if(!x) if(x==0) ◆if后面的表达式类型任意,必须用() ◆语句可以是复合语句 ◆else子句(可选)是if语句的 一部分,必须与if配对使用, 不能单独使用。 ◆当if和else下面的语句组,仅 由一条语句构成时,也可不使 用复合语句形式(即去掉花括 号)。 例 考虑下面程序的输出结果: #include <stdio.h> main() { int x,y; scanf(“%d,%d”,&x,&y); if(x>y) x=y; y=x; else x++; y++; printf(“%d,%d\n”,x,y); } Compile Error! ⚫对If语句的说明