c语言第四章分支语句(精).ppt
《c语言第四章分支语句(精).ppt》由会员分享,可在线阅读,更多相关《c语言第四章分支语句(精).ppt(40页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、C C 程序设计基础教程程序设计基础教程第四章第四章 分支语分支语句句7/2/20222 顺序结构顺序结构的程序只能以顺序的方式处理数据的程序只能以顺序的方式处理数据 ,但实,但实际问题要求计算机能够对问题进行判断,根据判断的结果,际问题要求计算机能够对问题进行判断,根据判断的结果,选择不同的处理方式,这就要求程序本身具有判断和选择选择不同的处理方式,这就要求程序本身具有判断和选择能力,能力,分支结构分支结构正是为解决这类问题而设定的。正是为解决这类问题而设定的。 C语言用于实现分支有语言用于实现分支有if结构结构和和switch结构结构。 4.1.1 if语句语句if结构是一种常用的分支结构
2、,是最简单的一种单分支结构是一种常用的分支结构,是最简单的一种单分支结构结构 。C C 程序设计基础教程程序设计基础教程第四章第四章 分支语分支语句句7/2/20223一般形式为:一般形式为: if() :一般为条件表达式或逻一般为条件表达式或逻辑表达式。辑表达式。 功能功能:先判断:先判断的逻辑值,的逻辑值,若该逻辑值为若该逻辑值为“真真”,则执行,则执行,否则,什么也不执行。,否则,什么也不执行。注意:注意:if语句中的语句中的一般情况一般情况下都是以下都是以复合语句复合语句的形式出现,即的形式出现,即用一对花括号将语句括起来。用一对花括号将语句括起来。if结构的流程图结构的流程图 : C
3、 C 程序设计基础教程程序设计基础教程第四章第四章 分支语分支语句句7/2/20224【例【例4-1】 从键盘任意输入两个实数,然后按其代从键盘任意输入两个实数,然后按其代数值从小到大输出这两个数。数值从小到大输出这两个数。 先制定算法的流程图,如先制定算法的流程图,如图所示,虚线框为图所示,虚线框为if结构。结构。 根据流程图可以很方便地根据流程图可以很方便地写出解决这个问题的程序写出解决这个问题的程序 C C 程序设计基础教程程序设计基础教程第四章第四章 分支语分支语句句7/2/20225/*exam4_1.c 按升序输出两个数按升序输出两个数*/#include main()float
4、a,b,t;scanf(%f,%f,&a,&b);if(ab)t=a;a=b;b=t;printf(%5.2f,%5.2fn,a,b);C C 程序设计基础教程程序设计基础教程第四章第四章 分支语分支语句句7/2/20226【例【例4-2】:从键盘输入一个整数,求该数的】:从键盘输入一个整数,求该数的绝对值。绝对值。 该问题算法该问题算法的流程图的流程图 :C C 程序设计基础教程程序设计基础教程第四章第四章 分支语分支语句句7/2/20227根据流程图写出的程序如下:根据流程图写出的程序如下:/*exam4_2.c 求整数的绝对值求整数的绝对值*/#include main()int num
5、;scanf(%d,&num);if(num0)num=-num;printf(The absolute value i s:%dn,num); C C 程序设计基础教程程序设计基础教程第四章第四章 分支语分支语句句7/2/20228 4.1.2 if_else语句语句 if_else语句是一种双分支结构,其一般形式为:语句是一种双分支结构,其一般形式为:if() else :一般为条件表达式或逻辑表达式。:一般为条件表达式或逻辑表达式。功能是:先判断功能是:先判断的值,若其值为的值,若其值为“真真”,则执,则执行行,否则执行,否则执行。if_else结构的流程图结构的流程图 :C C 程序设
6、计基础教程程序设计基础教程第四章第四章 分支语分支语句句7/2/20229【例【例4-3】 设计一个猜数游戏,由计算机产生一个随机设计一个猜数游戏,由计算机产生一个随机数数magic,从键盘输入一个数从键盘输入一个数guess,若输入的数,若输入的数guess的的大小等于随机数大小等于随机数magic,则输出,则输出“You are right!”。否。否则,输出则,输出“You are wrong!”。 C C 程序设计基础教程程序设计基础教程第四章第四章 分支语分支语句句7/2/202210根据流程图可写出程序如下:根据流程图可写出程序如下: /*exam4_3.c 猜数游戏的程序猜数游戏
7、的程序*/#include #include main() int guess,magic; magic = rand(); scanf(%d, &guess); if(guess = magic) printf(You Are Right); else printf(You Are Wrong);C C 程序设计基础教程程序设计基础教程第四章第四章 分支语分支语句句7/2/202211 4.1.3 if语句的嵌套语句的嵌套 if语句的嵌套语句的嵌套 :是指在:是指在if或或else的分支下又可以包含另一个的分支下又可以包含另一个if语句或语句或if_else语句,嵌套的形式有语句,嵌套的形式
8、有规则嵌套规则嵌套和和任意嵌套任意嵌套两两种。种。if语句的规则嵌套形式如下:语句的规则嵌套形式如下: if() else if() else if () else if () else C C 程序设计基础教程程序设计基础教程第四章第四章 分支语分支语句句7/2/202212 if_else的规则嵌套流程图的规则嵌套流程图 C C 程序设计基础教程程序设计基础教程第四章第四章 分支语分支语句句7/2/202213【例【例4-4】 从键盘输入从键盘输入+、-、*、/中的任一个,输出对中的任一个,输出对应的英文单词:应的英文单词:plus 、minus、mutiply、divide,若输,若输入
9、的不是这四个字符中的任一个,则输出入的不是这四个字符中的任一个,则输出“error”。算法的流程图如图所示,虚线框所示为算法的流程图如图所示,虚线框所示为if_else的规则嵌套:的规则嵌套: C C 程序设计基础教程程序设计基础教程第四章第四章 分支语分支语句句7/2/202214#includemain() char ch; ch=getchar(); if (ch=+) printf(plusn); else if (ch=-) printf(minusn); else if(ch=*) printf(multiplyn); else if (ch=/) printf(dividen);
10、 else printf(errorn); C C 程序设计基础教程程序设计基础教程第四章第四章 分支语分支语句句7/2/202215注意:注意:if与与else的匹配关系,的匹配关系,else总是与离它最近的上一总是与离它最近的上一个个if配对。将每一对配对。将每一对if_else 结构采用结构采用缩进对齐方式缩进对齐方式,可,可以增加程序的可读性,良好的程序书写风格有助于对以增加程序的可读性,良好的程序书写风格有助于对程序的理解。程序的理解。 【例【例4-5】 计算阶跃函数计算阶跃函数y的值:的值: 0 x10 x00 x1yC C 程序设计基础教程程序设计基础教程第四章第四章 分支语分支
11、语句句7/2/202216算法的流程图如图,两个虚线框均为算法的流程图如图,两个虚线框均为if_else结构。结构。 C C 程序设计基础教程程序设计基础教程第四章第四章 分支语分支语句句7/2/202217根据流程图写出的程序如下:根据流程图写出的程序如下: /*exam4_5.c 计算阶跃函数计算阶跃函数y的值的值*/#includemain( )float x,y;printf(input x:n);scanf(%f,&x);if(x=0)if(x0)y=1;elsey=0;elsey=-1;printf(y=%-4.0fn,y);对多重对多重if,最容易犯的,最容易犯的错误是错误是if
12、与与else配对错误,配对错误, else总是与离它最近的总是与离它最近的上一个上一个if配对。配对。 C C 程序设计基础教程程序设计基础教程第四章第四章 分支语分支语句句7/2/202218 当嵌套当嵌套if分支较多时,程序变得复杂冗长,可读性降低。分支较多时,程序变得复杂冗长,可读性降低。C语言提供了语言提供了switch开关语句专门处理多路分支的情形,开关语句专门处理多路分支的情形,使程序变得简洁。使程序变得简洁。 4.2.1 switch语句语句 switch语句的语句的一般形式一般形式为:为: switch() case:语句序列:语句序列1; case:语句序列:语句序列2; c
13、ase:语句序列:语句序列n; default: 语句序列语句序列(n+1);C C 程序设计基础教程程序设计基础教程第四章第四章 分支语分支语句句7/2/202219常量表达式常量表达式: 值必须是整型、字符型或者枚举类型值必须是整型、字符型或者枚举类型语句序列语句序列: 允许有多条语句允许有多条语句: 可以为任何表达式可以为任何表达式功能:功能: 先计算先计算的值,再从上到下地判断与哪一个的值,再从上到下地判断与哪一个的值相等,如果的值相等,如果的值等于的值等于的值,则从语句序列的值,则从语句序列i开始执行,直到语句序开始执行,直到语句序列列(n+1)为止;若为止;若的值不等于任何一个的值
14、不等于任何一个的值,是执行的值,是执行default后面的语句序列后面的语句序列(n+1)。 C C 程序设计基础教程程序设计基础教程第四章第四章 分支语分支语句句7/2/202220 switch语句语句一般形式一般形式的流程图的流程图: ?C C 程序设计基础教程程序设计基础教程第四章第四章 分支语分支语句句7/2/202221【例【例4-6】根据下面表所示的天气情况,决】根据下面表所示的天气情况,决定活动的场所。定活动的场所。 分别用整数分别用整数0、1、2和和3代表下雨、下雪、晴天和有风代表下雨、下雪、晴天和有风无雨天气。采用无雨天气。采用switch语句的一般形式语句的一般形式.C
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 第四 分支 语句
限制150内