资源描述:
《C语言程序设计 教学课件 作者 金升灿第三章 分支结构程序设计.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第三章分支结构程序设计1)了解分支结构及分支结构流程图;2)熟悉关系运算符及表达式和逻辑运算符及表达式的运算规则;3)掌握if语句的各种形式及具体应用;4)掌握switch语句的使用方法;5)熟悉条件运算符及表达式的应用。13.1分支结构流程图在程序设计中,常用分支结构流程图来表示分支结构的程序处理过程,如图3-1所示。分支结构也可以用N-S流程图表示,如图3-2所示。设计选择结构程序,要考虑两个方面的问题:一是如何表示条件,二是用什么语句实现选择结构。在C语言中,一般用关系表达式或逻辑表达式表示条件,实现选择结构用
2、if语句或switch语句。23.2关系运算和逻辑运算3.2.1关系运算符和关系表达式1.关系运算符>(大于)、>=(大于等于)、<(小于)、<=(小于等于)、==(等于)、!=(不等于)说明:1)关系运算符的优先级①在关系运算符中,前4个优先级相同,后2个也相同,且前4个高于后2个。②关系运算符的优先级,低于算术运算符,但高于赋值运算符。2)关系运算符结合性都是左结合的。3)“等于”关系运算符是双等号“==”,而不是单等号“=”(是赋值运算符)。33.2.1关系运算符和关系表达式2.关系表达式关系表达式的一般形式为
3、:表达式关系运算符表达式关系表达式的运算结果是逻辑值,“真”或“假”。在C语言中,用整数“1”表示“真”,用整数“0”表示“假”。因此,一个关系表达式的值是1或0。说明:1)在C语言用整数“1”表示“真”,用整数“0”表示“假”。所以,关系表达式的值,还可以参与其它种类的运算。例如:(a>b)+5。2)由于字符型常量存储的是ASCII码值,因此字符数据的比较是按其ASCII码值进行。例如:’a’>0的值为1(真),’A’>100的值为0(假),’A’<’B’的值为1(真)。43.2.2逻辑运算符和逻辑表达式1.逻辑运
4、算符&&(逻辑与)、
5、
6、(逻辑或)、!(逻辑非)说明:1)逻辑运算符的运算优先级①逻辑非的优先级最高,逻辑与次之,逻辑或最低,即:!(非)→&&(与)→
7、
8、(或)②逻辑运算符和其它运算符的优先级,按高到低排列为:!(非)→算术运算符→关系运算符→&&→
9、
10、→赋值运算符→,(逗号运算符)2)逻辑运算符的结合性。“!”是右结合的,“&&”和“
11、
12、”是左结合的。53.2.2逻辑运算符和逻辑表达式2.逻辑表达式逻辑表达式的一般形式为:单目逻辑运算符表达式表达式双目逻辑运算符表达式逻辑运算的结果是“真”或“假”,分别用“1”和
13、“0”来表示。因此,一个逻辑表达式的值是1或0。63.3if语句if语句是C语言用于实现分支结构的语句之一。C语言中的if语句可以分为简单if语句、if-else语句以及if-else-if语句。3.3.1简单if语句if(表达式)语句功能:如果表达式的值为“非0(真)”,执行“语句”后结束if语句。否则,直接结束if语句。执行过程,如图3-3所示。73.3.1简单if语句【例3-1】输入两个整数,输出其中的大数。#includemain(){inta,b,max;printf("inputtw
14、onumbers:");scanf("%d,%d",&a,&b);max=a;if(maxmain(
15、){intx,y;printf("inputx,y:");scanf("%d,%d",&x,&y);if(x>=y)printf("max=%d",x);elseprintf("max=%d",y);}程序运行结果:inputx,y:3,5↙max=5103.3.3分支结构的嵌套在一个分支结构内完整地包含另一个分支结构时,叫做分支结构的嵌套。当程序流程进入某个选择分支后又引出新的选择时,就要使用嵌套分支结构。【例3-5】从键盘输入两个整数,判断两个整数的大小关系。算法分析:比较两个数大小的结果,有三种可能的结果。因此
16、是三个分支问题。113.3.3分支结构的嵌套#includemain(){inta,b;printf("inputa,b:");scanf("%d,%d",&a,&b);if(a!=b)if(a>b)printf("a>b");elseprintf("a