c语言概述第04章选择数学

上传人:cl****1 文档编号:592006091 上传时间:2024-09-19 格式:PPT 页数:20 大小:144.06KB
返回 下载 相关 举报
c语言概述第04章选择数学_第1页
第1页 / 共20页
c语言概述第04章选择数学_第2页
第2页 / 共20页
c语言概述第04章选择数学_第3页
第3页 / 共20页
c语言概述第04章选择数学_第4页
第4页 / 共20页
c语言概述第04章选择数学_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《c语言概述第04章选择数学》由会员分享,可在线阅读,更多相关《c语言概述第04章选择数学(20页珍藏版)》请在金锄头文库上搜索。

1、1/45第四章 选择结构程序设计第四章第四章2/45第四章 选择结构程序设计ifif语句语句1.If1.If语句的三种基本形式语句的三种基本形式(1)if (1)if (表达式)表达式) 语句语句例:例: if(xy) printf(“%d”,x);表达式表达式语句语句真(非0)假(0)3/45第四章 选择结构程序设计 if if语句语句1、 if(表达式)(表达式) 语句语句 如:如: if (xy) printf(“%d”,x); if(x=3) printf(“%d”,x); if(x=3) printf( ); if(a) printf( ); if(3) printf( );4/45

2、第四章 选择结构程序设计 if if语句语句(2)if(2)if(表达式表达式) ) 语句语句1 1 else else 语句语句2 2例:例: if (xy) printf(“%d”,x); else printf(“%d”,y); 条件条件 语句句1 语句句2YN5/45第四章 选择结构程序设计 if if语句语句(3)if(3)if(表达式表达式1 1)语句)语句1 1 else if( else if(表达式表达式2)2)语句语句2 2 else if( else if(表达式表达式3)3)语句语句3 3 else if( else if(表达式表达式m)m)语句语句m m else

3、else 语句语句n n6/45第四章 选择结构程序设计 if if语句语句例:例: if (number500)cost=0.15;if (number500)cost=0.15; else if(number300)cost=0.10; else if(number300)cost=0.10; else if(number100)cost=0.075; else if(number100)cost=0.075; else if(number50)cost=0.05; else if(number50)cost=0.05; else cost=0; else cost=0;7/45第四章 选

4、择结构程序设计 if if语句语句说明:说明:1、 if语句中的表达式一般为逻辑表达式或关系表达式语句中的表达式一般为逻辑表达式或关系表达式2、每个语句后都要有一个分号、每个语句后都要有一个分号3、在、在if和和else后面可以只有一个语句,也可以有多个后面可以只有一个语句,也可以有多个语句,此时用花括号语句,此时用花括号“ ”将几个语句括起来成为一将几个语句括起来成为一个复合语句。个复合语句。 8/45第四章 选择结构程序设计 if if语句语句例例4.1 4.1 输入两个实数,按代数值由小到大的顺序输出这两个数。输入两个实数,按代数值由小到大的顺序输出这两个数。#include#inclu

5、de void main()void main() float a,b,t; float a,b,t; scanf(scanf(“%f,%f%f,%f”,&a,&b,&a,&b);); if(ab)if(ab) t=a; t=a; a=b; a=b; b=t; b=t; printf( printf(“%5.2f,%5.2fn%5.2f,%5.2fn”,a,b);,a,b); ynabt=aa=bb=t9/45第四章 选择结构程序设计 if if语句语句例4.2 输入三个数a,b,c,要求按由小到大的顺序输出。if ab 将a和b对换if ac 将a和c对换if bc 将b和c对换abacbc

6、a和b交换a和c交换c和b交换yyynn10/45第四章 选择结构程序设计 if if语句语句 #include #include void main ( ) void main ( ) float a,b,c,t;float a,b,c,t; scanf(“%f,%f,%f”,&a,&b,&c); scanf(“%f,%f,%f”,&a,&b,&c); if(ab)if(ab) t=a;a=b;b=t; t=a;a=b;b=t; if(ac) if(ac) t=a;a=c;c=t; t=a;a=c;c=t; if(bc) if(bc) t=b;b=c;c=t; t=b;b=c;c=t; pr

7、intf(%5.2f,%5.2f,%5.2fn,a,b,c); printf(%5.2f,%5.2f,%5.2fn,a,b,c); 11/45第四章 选择结构程序设计 if if语句语句二二.if.if语句的嵌套语句的嵌套在在ifif语句中又包含一个或多个语句中又包含一个或多个ifif语句称为语句称为ifif语句的嵌套。语句的嵌套。形式:形式:if()if()if() if() 语句语句1 1else else 语句语句2 2elseelseif() if() 语句语句3 3else else 语句语句4 4内嵌内嵌ifif12/45第四章 选择结构程序设计 if if语句语句匹配规则:匹配规

8、则:elseelse总是与它上面的,最近的,统一复合语句中的,未配总是与它上面的,最近的,统一复合语句中的,未配对的对的ifif语句配对。语句配对。例:例:if( )if( )if( ) if( ) 语句语句1 1elseelseif( ) if( ) 语句语句2 2else else 语句语句3 3例:例:if( )if( )if() if() 语句语句11elseelseif( ) if( ) 语句语句2 2else else 语句语句3 3当当ifif和和elseelse数目不同时,可以加数目不同时,可以加花括号花括号来确定配对关系。来确定配对关系。13/45第四章 选择结构程序设计 i

9、f if语句语句 -1 (x0)算法算法1 1: 算法算法2 2:输入输入x x 输入输入x x若若x0,x0,则则y=-1 y=-1 若若x0,x0,x0,则则y=1 y=1 若若x=0,x=0,则则y=0y=0输出输出y y 若若x0,x0,则则y=1y=1 输出输出y y 14/45第四章 选择结构程序设计4.3 if4.3 if语句语句 #includevoid main( ) int x,y; scanf(“%d”,&x); 程序段程序段 printf(“x=%d,y=%dn”,x,y); 15/45第四章 选择结构程序设计4.3 if4.3 if语句语句上例中的程序段有四个,请判断

10、哪个是正确的?上例中的程序段有四个,请判断哪个是正确的?程序程序1: 程序程序2: if(x=0) y=-1; if(x0) y=1; else else y=0; if(x=0) y=0; else y=-1; else y=1;程序程序3: 程序程序4: y=-1; y=0; if(x!=0) if(x=0) if(x0) y=1; if(x0) y=1; else y=0; else y=-1;正正确确正正确确错错误误错错误误16/45第四章 选择结构程序设计switchswitch语句语句switchswitch语句的格式:语句的格式:(表达式)(表达式) 常量表达式:语句常量表达式:

11、语句 常量表达式:语句常量表达式:语句 常量表达式:语句常量表达式:语句 :语句:语句 17/45第四章 选择结构程序设计 switchswitch语句语句例例: :要求按照考试成绩的等级输出百分制分数段,用要求按照考试成绩的等级输出百分制分数段,用switchswitch语句实现:语句实现:()()();); ();); ();); ();); ();); 18/45第四章 选择结构程序设计 switchswitch语句语句说明:(1)(1)后面括弧内的后面括弧内的“表达式表达式”可以为任何类型。可以为任何类型。(2) (2) 当表达式的值与某一个后面的常量表达式的值相当表达式的值与某一个后

12、面的常量表达式的值相 等时,就执行此后面的语句,若所有的等时,就执行此后面的语句,若所有的 中的常量表达式的值都没有与表达式的值匹配的,就执行中的常量表达式的值都没有与表达式的值匹配的,就执行 后面的语句。后面的语句。(3) (3) 每一个的常量表达式的值必须互不相同,否则就每一个的常量表达式的值必须互不相同,否则就 会出现互相矛盾的现象(对表达式的同一个值,有两种或会出现互相矛盾的现象(对表达式的同一个值,有两种或 多种执行方案)。多种执行方案)。19/45第四章 选择结构程序设计 switchswitch语句语句(4) (4) 各个和的出现次序不影响执行结各个和的出现次序不影响执行结 果。

13、例如,可以先出现果。例如,可以先出现“:”,再出现,再出现 “ “ :”,然后是,然后是“ :”。(5) (5) 执行完一个后面的语句后,流程控制转移到下一执行完一个后面的语句后,流程控制转移到下一 个继续执行。个继续执行。“常量表达式常量表达式”只是起语句只是起语句 标号作用,并不是在该处进行条件判断。在执行标号作用,并不是在该处进行条件判断。在执行 语句时,根据后面表达式的值语句时,根据后面表达式的值 找到匹配的入口标号,就从此标号开始执行下去,不再进找到匹配的入口标号,就从此标号开始执行下去,不再进 行判断。行判断。应该在执行一个分支后应该在执行一个分支后, ,可以用一个可以用一个 语句来终止语句来终止switchswitch语句的执行。语句的执行。 (6) (6) 多个可以共用一组执行语句。多个可以共用一组执行语句。 case A:case A:case B:case B:case case C:printfC:printf(“60n”);break;(“60n”);break;20/45第四章 选择结构程序设计鸡兔同笼问题鸡兔同笼问题 ?

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号