◆形式三: 格式:if(表达式1)语句1 else if(表达式2)语句2 else if(表达式3)语句3 ◆执行过程 else 语句n 0 例:if( number>1000 cost=0.4 else if (number>800) cost=0.3 else if (number>600) cost=0.2 else if (number >400) cost=0. 1 else cost=o
形式三: • 格式: if (表达式1 ) 语句1 else if ( 表达式2 ) 语句2 else if (表达式3 ) 语句3 …... [ else 语句n ] 表达式1 语句1 非0 =0 表达式2 表达式3 语句2 语句3 语句n 非0 非0 =0 =0 ◆执行过程: 例:if ( number>1000) cost=0.4; else if (number>800) cost=0.3; else if (number>600) cost=0.2; else if (number>400) cost=0.1; else cost=0;
●说明: ◆if后面的表达式类型任意 if(x if(x!=0 如:fab9&y成p0t(ab,xy);:x5; ◆语旬可以是复合语句 f(d”,”x=5”) (%d12,x!=5”) 例考慮下面程序的输出结果 #include <stdio. h> rinf(%d,,>x=5") maino printf(%/od72x!=5” i Int x,y, z if(x>y) fz=x; xy;y=z; I ro- Compile Error! x=0) printf(%,xI=5") x++;,y++ e print ntf(%od,x5) printf("%od, %dn,xy)
例如: x=5; if (x) printf(“%d”,”x =5”); else printf(“%d”,”x!=5”); if( x!=0) printf(“%d”,”x=5”); else printf(“%d”,”x!=5”); if(!x) printf(“%d”,”x !=5”); else printf(“%d”,”x=5”); if(x==0) printf(“%d”,”x !=5“); else printf(“%d”,”x=5” ); 如:if(a==b&&x==y) printf(“a=b,x=y”); if(3) printf(“OK”); if(‘a’) printf(“%d”,’a’); ⚫说明: ◆if后面的表达式类型任意 ◆ if(x) if(x!=0) if(!x) if(x= =0) Compile Error! 例 考虑下面程序的输出结果: #include <stdio.h> main() { int x,y,z; scanf(“%d,%d”,&x,&y); if(x>y) z=x; x=y; y=z; else x++; y++; printf(“%d,%d\n”,x,y); } ◆语句可以是复合语句