《c语言选择结构程序的设计教(学)案120.pdf》由会员分享,可在线阅读,更多相关《c语言选择结构程序的设计教(学)案120.pdf(12页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、.学习参考 .选择结构程序设计(一)说明 内容 1关系运算符和关系表达式 2逻辑运算符和逻辑表达式 3条件运算符及条件表达式 4IF 语句 5IF 语句的嵌套 重点 1关系运算符和关系表达式 2逻辑运算符和逻辑表达式 3条件运算符及条件表达式 4IF 语句的格式使用 5IF 语句的嵌套 难点 复杂条件的表示;IF 语句的正确使用。问题提出 通过前面的顺序结构程序设计的介绍,我们都知道顺序结构程序设计按照自上而下的流程的顺序执行,但是在实际生活中,仅顺序结构是无法满足用户要求的,并不是所有的程序都是自上而下的顺序执行,而是根据条件有选择的执行。这就是我们将要学习的分支结构程序设计。详细内容 一、
2、导入 讨论导入:请教学生翻译下面的英语句子 a.If she is not in Class1 then she will be in Class2.b.If it does not rain then Ill go to park,else Ill go to the movie.学习参考 .创造情景,使学生感觉新鲜和自信,学生可以翻译的准确无误。此过程中,教师引导学生注意 if、then、else 三个词的使用。学生归纳:条件语句的一般形式:格式 1:if 条件 then 语句组 格式 2:if 条件 then 语句组 1 else 语句组 2 二、if中的条件表示 1 关系运算符和关系表
3、达式 在程序中经常需要比较两个量的大小关系,以决定程序下一步的工作。比较两个量的运算符称为关系运算符。(1)关系运算符:操作符 作用 大于 =大于等于 小于 =小于等于 =等于 !=不等于 关系运算符都是双目运算符,用于两个运算对象比较。注意:不能将“=”写成“=”写成“=”。(2)关系表达式:用关系运算符将两个运算对象连接起来的式子称为关系表达 生活中的“十字路口”也属于选择结构类型。举例说明 .学习参考 .式。运算对象可以是常量,可以是变量,也可是表达式。如:32 b*b-4*a*c=1e-6 x=y a%b!=0 关系表达式的值:C 语言规定用数值 0 代表关系运算结果为“假”,用数值
4、1 代表关系运算结果为“真”。关系表达式值的数据类型为整型。设有定义 int a=3,b=2,c=1;则:ab 的值为 1 c=a 的值为 0(3)优先级和结合方向、=、和 =c+d 等价于 (a+b)(c+d)关系运算符的结合方向都为左结合。如:abc 等价于 (ab)c 2、逻辑运算符和逻辑表达式(1)逻辑运算符&逻辑与|逻辑或!逻辑非(2)逻辑表达式 实例讲解说明 .学习参考 .用逻辑运算符将关系表达式或逻辑量连接起来的式子就是逻辑表达式。运算对象一般为关系表达式或逻辑量(常量或变量)。如;x10|x2&43 的结果为真 35 结果为真 !(32)的结果为假 逻辑表达式的值:用数值 0
5、代表逻辑运算结果为“假”,用数值 1代表逻辑运算结果为“真”。在判断一个量(常量或变量)是“真”还是“假”时,C 语言规定以 0 代表“假”,以非 0 代表“真”。35 的结果为 0 35 结果为 1!(32)的结果为 0(3)优先级和结合方向 三个逻辑运算符优先级从高到低的顺序为:!&|!的优先级高于算术运算符。&和|的优先级低于关系运算符。如:32+1&4(2+1)&(4b&cd&ef 等价于 (ab)&(cd)&(ef)!(ab)等价于!(!(!(ab)举例说明 .学习参考 .3、条件运算符及条件表达式(1)条件运算符?:C 语言中唯一的一个三目运算符。(2)条件表达式 条件表达式的一般
6、形式为:表达式 1?表达式 2:表达式 3 其中,表达式i(1 i 3)的类型任意,表达式1一般为关系表达式或逻辑表达式,表达式 2 和表达式 3 一般为同类型表达式。条件表达式的求解过程是:先求解表达式 1,若表达式 1 的值不为 0,则求解表达 式 2,表达式 2 的值就是条件表达式的值;若表 达式 1 的值为 0,则求解表达式 3,表达式 3 的值就是条件表达式的值。如:32?3+2:3*2 表达式的值为 5 a b?3!=0:7=8 表达式的值为 0(3)优先级和结合方向 条件运算符的优先级高于赋值运算符,但低于逻辑运算符、关系运算符和算术运算符。如:32?3+2:3*2 等价于(32
7、)?(3+2):(3*2)a b?3!=0:7=8 等价于(a b)?(3!=0):(7=8)条件运算符的结合方向为右结合。如:通过讲解,向 if 语句过渡 .学习参考 .注意:条件表达式中的表达式 2 和表达式 3 只有一个被求解。表达式 1 的类型可与表达式 2 和表达式 3 的类型不同。三、分支结构表示IF语句 在 C 中条件语句的一般形式为:if(表达式)语句 1;else 语句 2;执行过程如下:如果表达式的值为非 0(TURE)即真,则执行语句 1,执行完语句 1从语句 2 后开始继续向下执行;如果表达式的值为 0(FALSE)即假,则跳过语句 1 而执行语句 2。然后程序继续往下
8、执行。所谓表达式是指关系表达式和逻辑表达式的结合式,关于表达式前面已作过介绍,这是不再重复。注意:1.如果语句 1 或语句 2 有多于一条语句要执行时,必须使用和 把这些语句包括在其中,此时条件语句形式为:通过与前面引入的例子重点说明其格式 表达式 真(非 0)假(0)语 句 1 语 句 2.学习参考 .if(表达式)语句体 1;else 语句体 2;2.分支程序的三种形式(1)单分支:例 1 输入一个整型数,输出该数的绝对值。main()int a,;scanf(%d,&a);if(ab*b)max=a;else max=b;.学习参考 .printf(%5dn,max);(3)多分支 if
9、 语句是双分支 if 语句的一个扩充,其格式为:例 3 输入一个百分制成绩,输出其对应的等级。(90100 为A,8099 为 B,7079 为 C,6069 为 D,059 为 E)main()int x;char y;scanf(%d,&x);if(x=90)y=A;else if(x=80)y=B;else if(x=70)y=C;else if(x=60)y=D;else y=E;printf(y=%cn,y);四If嵌套格式 if 语句可以嵌套,即在一个 if 语句中又可以包含一个或多个 if 语句,一般形式为:if(表达式 1)if(表达式 2)语句 1 else 语句 2 els
10、e 结合实例说明其注意事项 .学习参考 .if(表达式 3)语句 3 else 语句 4 注意:在缺省花括号的情况下,if和else的配对关系是:从最内层开始,else 总是与它上面最近的并且没有和其他 else 配对的 if 配对。程序员应该养成良好的编程习惯,从书写格式上,注意if和else的层次关系,反映 if 与 else 的配对关系。以便提高程序的维护和理解。如下 if 与 else 的配对举例。例 4 已知函数 y=)0(1)0(0)0(1xxx 编写程序,输入 x,输出 y 值。main()float x;int y;.学习参考 .scanf(%f,&x);if(x=0)if(x
11、0)y=1;else y=0;else y=-1;printf(x=%f y=%dn,x,y);使用 if 语句时应注意以下几点:if 后面圆括号内的表达式可以为任意类型,但一般为关系表达式或逻辑表达式。if 和 else 后面的语句可以是任意语句。if(x)与 if(x!=0)等价。if(!x)与 if(x=0)等价。五、举例说明 例 5:读入一个整数,判断其能否被 3 整除。#include main()int a;printf(Enter an integer“);scan(%d,&a);/*输入一个整数*/if(a%3=0)/*判断能否被 3 整除并输出相应信息*/通过图例说明嵌套的匹
12、配关系。.学习参考 .printf(%d 能被 3 整除n”,a);else printf(%d 不能被 3 整除n”,a);例 6 从键盘输入三个数,求出绝对值最大者并显示输出。分析:可将输入的三个数存放于变量 a,b,c 中,先用 a 和 b 比较(绝对值比较),将大数存放于临时变量 max 中,再用 max 和 c 比较,再将大数存放于 max 中,这样进行比较之后得到的 max 一定为a,b,c 中绝对值最大的数。程序如下:#include#include math.h main()float a,b,c;float max;printf(“Enter 3 numbers n”);sc
13、anf(%f,%f,%f,&a,&b,&c);if(abs(a)abs(b)max=abs(a);else max=abs(b);if(max abs(c)max=abs(c);printf(Max=%fn,max);例 7 输入三个整数,按大小顺序输出 程序如下:对比实例,详细细化注意事项 .学习参考 .#include main()int a,b,c,temp;scanf(“%d,%d,%d”,&a,&b,&c);if(ab)temp=a;a=b;b=temp;if(ac)temp=a;a=c;c=temp;if(bc)temp=b;b=c;c=temp;printf(“%4d,%4d,%4d”,a,b,c);六总结 本讲对关系运算符和关系表达式、逻辑运算符和逻辑表达式做了详细的论述;并对条件运算符及条件表达式;通过对上面的论述,可以得到对选择结构条件的建立。用 IF 语句对选择结构来得到实现,IF 语句的格式及其应用。通过实例,说明分支程序设计的思想,巩固前面所讲的内容。