44选择结构 4.4.1if条件语句 if语句有单分支、双分支和多分支等结构 1.单分支语句。 表达式 使用格式: Y N if(表达式) 语句 语句; 图4-13单分支选择结构的执行过程 执行过程:如果表达式的 值为真,则执行其后的语句, 否则不执行该语句。其过程可 表示为图4-13
4.4 选择结构 4.4.1 if条件语句 if语句有单分支、双分支和多分支等结构 1.单分支if语句。 使用格式: if (表达式) 语句; 执行过程:如果表达式的 值为真,则执行其后的语句, 否则不执行该语句。其过程可 表示为图4-13。 图4-13 单分支选择结构的执行过程
44选择结构 说明: (1)表达式:一般为关系表达式、逻辑表达式,也可为 算术表达式,其值按非零为True,零为 False进行判断。 (2)在置语句中,条件判断表达式必须用括号括起来, 在语句之后必须加分号。 (3)如果当条件成立要执行多个语句,就要使用“{}” 来构成复合语句。 例:已知两个数x和y,比较它们的大小,使得x大于y if(x<y 表达式 t=x;x=yy=t计}/t为中间变量*/ N 语句 图413单分支选择结构的执行过程
4.4 选择结构 说 明: (1)表达式:一般为关系表达式、逻辑表达式,也可为 算术表达式,其值按非零为True,零为False进行判断。 (2)在if语句中,条件判断表达式必须用括号括起来, 在语句之后必须加分号。 (3)如果当条件成立要执行多个语句,就要使用“{ }” 来构成复合语句。 例:已知两个数x和y,比较它们的大小,使得x大于y。 if (x<y) {t=x;x=y;y=t;} /*t为中间变量*/ 图4-13 单分支选择结构的执行过程
44选择结构 2.双分支结构 Jif. else…语句 使用格式: if(表达式) <语句1 else <语句2>; 语句的执行过程如图414所示,即当表达式的值为非零(条件成立) 时执行<语句1>,否则执行ese后面<语句2> 例如:输出xy两个中值较大的一个值。 if (x>y) N printf( %d x) 语句1语句2 else printf( %d"y 图4-14双分支选择结构执行过程
4.4 选择结构 2.双分支结构if…else….语句 使用格式: if (表达式) <语句1>; else <语句2>; 语句的执行过程如图4-14所示,即当表达式的值为非零(条件成立) 时执行<语句1>,否则执行else后面<语句2>。 例如:输出x,y两个中值较大的一个值。 if (x>y) printf("%d" x); else printf("%d" y); 图4-14 双分支选择结构执行过程
4选择结构 3.if. else if语句(多分支结构) 语句形式: f(表达式1) 语句1; 、慭丸 表达式2 else if(表达式2) Y N 语句2; 语句1 表达式n Y 0。0。。0。鲁 语句2 else if(表达式n) 语句n语句r+1 语句n else 图4-15多分支i语句执行过程 语句n+1;
4.4 选择结构 3.if…else if语句(多分支结构) 语句形式: if (表达式1) 语句1; else if (表达式2) 语句2; ……….. else if (表达式n) 语句n; else 语句n+1; 图4-15 多分支if语句执行过程
44选择结构 例4-5输入一组学生成绩,评定其等级。方法是:90~100分为“A”,80~89 分为“B”,70~79分为“C”,60~69分为“D”,60分以下为“E”。 程序段如下: void main o I int score; 注意教材的程序 scanf (d,&score)i 书写格式不好 if(score >=90) printf("A)i else if (score >=80) printf("b)i else if(score >=70) printf("c")i else if (score >=60) printf("D)i else printf (E
4.4 选择结构 例4-5 输入一组学生成绩,评定其等级。方法是:90~100分为“A” ,80~89 分为“B” ,70~79分为“C” ,60~69分为“D” ,60分以下为“E” 。 注意教材的程序 书写格式不好 程序段如下: void main() { int score; scanf(“%d”,&score); if (score >=90) printf("A"); else if (score >=80) printf("B"); else if (score >=70) printf("C"); else if (score >=60) printf("D"); else printf("E"); }