选择结构
第08课 选择结构(同步教案)-初中信息技术Python编程
2019-2020学年初中信息技术【轻松备课】Python编程
第8课选择结构
【教学目标】
1. 知识与技能:了解什么是选择结构以及if语句的使用。
2. 过程与方法:通过自主讨论、合作探究、实践练习,提高自我学习的能力。
3. 情感态度与价值观:通过代码,让学生了解程序语言,提升对计算机世界的认知。
【教学重难点】
1. 重点:if-elif-else语句的使用;
2. 难点:多种结构的程序编写。
【教学方法】
讲授法、练习法
【教学准备】
多媒体网络机房
【教学过程】
选择结构的概念。
新授新知1. 选择结构
教师通过流程图的方式,讲解选择结构的原理。
然后给出选择结构在Python编程语言中的实现。
选择结构根据上面的流程图,可以分为单分支、
双分支、多分支。
其实现如下:
(1)单分支if语句
Python编程中单分支if语句的基本形式为:
if 判断条件:
执行语句……
(2)双分支if语句
当条件不成立需要执行其他语句时,可以用if
双分支结构,基本形式为:
if 判断条件:
执行语句……
else:
执行语句……
教师带领学生将前面的减法程序改进为无论大
小,结果都为正的程序。
#1. 采集输入
学生积极回
答老师的问
题。
通过结合
情景进行
讲解概念,
学生更易
吸收。
C语言_实验二、选择结构程序设计
实验二 选择结构程序设计一、实验目的1. 掌握关系表达式和逻辑表达式的使用。
2. 熟悉选择结构程序设计。
3. 熟练使用if 语句进行程序设计。
4. 使用switch 语句实现多分支选择结构。
二、实验内容(1 计算a+|b| 2 判断一个整数是否可以被3和5整除)1.[目的]掌握判断一个字符型数据是否数字字符的方法,以及数字字符转换为相应整数的方法。
[题目内容]从键盘输入一个字符型数据,若输入一个数字字符('0'-'9'),则将其转换成相应的整数显示出来;若输入其它字符,则显示出错信息。
[输入]一个字符型数据[输出]整数或出错信息[提示] 根据字符型数据的ASCII 码值是否在‘0’字符与‘9’字符之间进行判断。
使用if …else …语句和复合语句。
2.[目的]掌握条件表达式的使用[题目内容] 编写一个程序,其功能为:从键盘输入三个数x 、y 、z ,判断x+y=z 是否成立,若成立输出‚x+y=z ‛的信息,否则输出‚x+y!=z ‛的信息。
[输入] 三个数x 、y 、z[输出] ‚x+y=z ‛或‚x+y!=z ‛[提示] 条件判断表达式x+y==z3.[目的]掌握求最大值最小值的方法。
[题目内容] 编写一个程序,其功能为:输入三个整数,输出最大数和最小数。
[输入] 三个整数[输出] 最大值和最小值[提示] 设置最大值变量max 和最小值变量min ;首先比较a,b 的大小,并把大数存入max , 小数存入min ;然后最大值变量max 和最小值变量min 再与c 比较,若c 大于max ,则max 取值c ,否则保持不变;如果c 小于min ,则min 取值c ,否则保持不变。
最后输出max 和min 的值。
使用if …else …语句、if 语句以及复合语句。
4.[目的]运用已学知识解决实际问题。
[题目内容]如下两个线性方程组的两个未知数为x1和x2:ax 1+bx 2=mcx 1+dx 2=n该方程的唯一解为(ad-cb 不等于零时):cb ad bn md x --=1 bcad mc na x --=2 请编写一个程序,读取a 、b 、c 、d 的值,计算x1和x2的值。
《选择结构》课件
我们可以使用 if...elif...else 语 句来检查多个条件,并根据 条件的结果执行相应的代码 块。
在使用 if...elif...else 语句时, 需要确保条件判断的顺序和 逻辑正确性。
巢状if语句
1 语法
2 使用
3 注意事项
巢状if语句是一种嵌套的选 择结构,根据多个条件判断 执行不同的代码块。
我们可以使用 if...else 语句 来检查一个条件是否为真, 并根据条件的结果执行相应 的代码块。
在使用 if...else 语句时,需 要确保条件判断的完整性和 逻辑正确性。
if...elif...else语句
1 语法
2 使用
3 注意事项
if...elif...else 语句是一种多重 选择结构,根据不同条件判 断执行不同的代码块。
选择结构的应用案例
选择结构广泛应用于逻辑判断、程序流程控制、用户交互和数据处理等领域。
在使用switch语句时,需要 确保每个条件及其对应的逻 辑正确性,并注意避免遗漏 或重复条件。
总结
选择结构的作用
选择结构能够根据不同的条件执行不同的代码逻辑,增强程序的灵活性和可扩展性。
选择结构的分类
选择结构包括if语句、if...else语句、if...elif...else语句、巢状if语句和switch语句等。
我们可以使用巢状if语句来 处理多个复杂的条件判断情 况ቤተ መጻሕፍቲ ባይዱ并执行相应的代码块。
在使用巢状if语句时,需要 确保每个条件判断的顺序和 逻辑正确性,以避免出现意 外结果。
switch语句
1 语法
2 使用
3 注意事项
switch语句是一种根据不同 值进行条件判断的选择结构。
选择结构典型例题
11、已知方程ax2+bx+c=0的系数值(设a≠0),求方程的根。
#include <math.h>
main()
{float a,b,c,d,p,q,x1,x2;
scanf("%f%f%f",&a,&b,&c);
d=sqrt(b*b-4*a*c);
if(d>=0)
{x1=(-b+sqrt(d))/(2*a); /*求两个实根*/
y=-1;
printf("y=%f\n",y);
}
解法2:
main()
{float x,y;
scanf("%f",&x);
if(x>0)
y=1;
else if(x==0)
y=0;
else
y=-1;
printf("y=%f\n",y);
选择结构程序设计
1、从键盘输入两个整数,求出较大数并输出。
解法1:
main()
{int x,y,maamp;x,&y);
if(x>y)
max=x;
else
max=y;
printf("max=%d\n",max);
}
解法2:
printf("x2=%f-%fi\n",p,q);
}
}
if(ch1>='a'&&ch1<='z') /*不能写作if('a'<=ch1<='z')*/
用力法解超静定结构时,可选取的基本结构
用力法解超静定结构时,可选取的基本结构
在使用力方法解超静定结构时,常常需要选择一个基本结构来进行分析。
以下是一些常见的基本结构选择:
1. 杆件结构:对于较简单的结构,如桁架、梁等,可以选择杆件结构作为基本结构。
2. 桁架结构:对于复杂的结构,如大跨度桥梁、支撑塔等,通常选择桁架结构作为基本结构进行分析。
3. 刚架结构:对于多层建筑或桥梁等结构,可以选择刚架结构作为基本结构,进行整体稳定性或刚度分析。
4. 平面网格结构:对于平面或曲面结构,可以选择平面网格结构作为基本结构进行分析。
5. 龙骨槽钢结构:对于柱墙体系、屋架等结构,可以选择龙骨槽钢结构作为基本结构。
6. 钢筋混凝土框架结构:对于房屋、厂房等建筑结构,可以选择钢筋混凝土框架结构作为基本结构。
在选择基本结构时,需要考虑结构的特点、材料、受力情况以及所需分析的目的,以确保分析结果的准确性和可靠性。
如何选择适合的建筑结构形式?
如何选择适合的建筑结构形式?
在选择适合的建筑结构形式时,需要考虑多种因素。
首先,我们需要了解建筑物的用途和功能。
不同的用途和功能需要不同的结构形式。
例如,重工业建筑需要能够承受重荷载的结构形式,而轻工业建筑则需要能够适应轻荷载的结构形式。
其次,我们需要考虑地质和地形条件。
不同的地质和地形条件对建筑物的地基和基础有不同的要求。
例如,在软土地基上建造建筑物需要采用桩基、深基坑支护等特殊措施,以确保建筑物的安全和稳定。
此外,我们还需要考虑建筑材料和施工技术的可行性。
不同的建筑材料和施工技术需要不同的结构形式。
例如,采用预制构件拼装的建筑物需要采用装配式结构形式,而采用钢筋混凝土浇筑的建筑物则需要采用现浇结构形式。
最后,我们还需要考虑经济和社会因素。
不同的结构形式对建筑物的造价、工期、环保等方面有不同的影响。
我们需要权衡各种因素,选择最适合的结构形式。
综上所述,选择适合的建筑结构形式需要考虑多种因素,包括建筑物的用途和功能、地质和地形条件、建筑材料和施工技术的可行性、经济和社会因素等。
只有综合考虑这些因素,才能选择出最适合的结构形式,确保建筑物的安全、稳定、经济和社会效益。
网络拓扑结构选择原则
网络拓扑结构选择原则网络拓扑结构在计算机网络中起着至关重要的作用。
它决定了网络中设备之间的连接方式,直接影响着网络的性能、可靠性和扩展性。
在设计和建设网络时,选择合适的拓扑结构至关重要。
本文将探讨网络拓扑结构选择的原则,并讨论几种常见的拓扑结构。
首先,选择网络拓扑结构应考虑网络规模和要求。
根据网络规模的大小和对网络的要求程度,可以选择适合的拓扑结构。
当网络规模较小且对性能和可靠性要求不高时,可以选择星型或总线型拓扑。
星型拓扑结构简单,易于管理和维护,并且具有较好的可靠性。
总线型拓扑结构成本较低,但在大规模网络中性能和可靠性相对较弱。
而当网络规模较大且对性能和可靠性要求较高时,可以选择树型、网状或混合拓扑。
树型拓扑结构可以有效地组织大规模网络,减少网络中的冲突和干扰,并提供较高的可靠性。
网状拓扑结构具有较好的容错能力,当某个节点出现故障时,数据可以通过其他路径传输。
混合拓扑可以根据实际需要灵活选择不同的拓扑结构,以达到最佳性能和可靠性。
其次,选择网络拓扑结构应考虑网络的流量模式。
根据网络中传输的数据流量模式,可以选择不同的拓扑结构。
如果流量模式较为集中,即大量的数据流向某个中心节点,则星型拓扑结构是一个不错的选择。
星型拓扑结构将所有设备连接到中心节点,可以有效管理和控制数据的流向。
而当流量模式较为分散,即数据在网络中的流动较为均匀时,可以选择网状或树型拓扑结构。
网状拓扑结构允许数据通过多个路径传输,可以提高网络的可靠性和灵活性。
树型拓扑结构通过层级结构将数据进行组织,可以有效地控制数据的流动。
此外,选择网络拓扑结构还应考虑网络的性能和扩展性。
不同的拓扑结构具有不同的性能和扩展性特点。
星型和总线型拓扑结构适合小型网络,易于扩展和维护。
树型拓扑结构能够支持大规模网络,但扩展性相对较弱。
而网状拓扑结构具有较好的扩展性,可以支持大规模网络和高并发的数据传输。
在选择网络拓扑结构时,需根据实际情况综合考虑性能和扩展性的需求。
网络拓扑结构选择原则
网络拓扑结构选择原则在设计和建设网络时,选择适合的网络拓扑结构是至关重要的一步。
网络拓扑结构决定了网络中设备之间的连接方式和通信路径,对网络性能、可靠性、安全性等方面都有重要影响。
在选择网络拓扑结构时,我们需要考虑一些原则,以确保网络能够高效稳定地运行。
首先,一个重要的原则是可靠性。
网络可靠性是指网络的设备和链路能够保持良好的工作状态,即使部分设备或链路发生故障,仍然能够保障整个网络的正常运行。
为了提高网络的可靠性,我们可以选择分布式的网络拓扑结构,例如星型、树状或网状结构。
这些结构的特点是设备和链路之间的冗余度较高,当某个节点或链路发生故障时,可以通过备用链路或节点来保持通信的连通性,从而保证网络的可靠性。
其次,性能是选择网络拓扑结构时需要考虑的另一个重要因素。
网络性能包括带宽、延迟和吞吐量等方面。
带宽是指网络上能够传输数据的最大速率,延迟是指数据在网络中传输的时间延迟,吞吐量是指网络上能够传输的数据量。
为了提高网络的性能,我们可以选择拓扑结构中链路较短、链路带宽较大的结构,例如总线型、环状或星型网络。
这些结构可以提供较高的带宽和较低的延迟,从而提高网络的传输速率和响应时间。
此外,安全性也是选择网络拓扑结构时需要考虑的一个因素。
安全性是指网络的抵御攻击和保护数据传输的能力。
为了提高网络的安全性,我们可以选择较为封闭的网络拓扑结构,例如树状或环状结构。
这些结构可以限制不必要的网络入口,减少安全漏洞的存在。
此外,我们还可以考虑使用虚拟专用网络(VPN)或防火墙等安全设备来加强网络的安全性。
最后,网络故障的排除和维护也是选择网络拓扑结构时需要考虑的因素之一。
为了方便故障诊断和网络维护,我们可以选择较为简单和结构化的网络拓扑结构,例如星型或总线型结构。
这些结构可以使得故障的定位和排除更加容易,减少维护的困难和成本。
综上所述,选择合适的网络拓扑结构是网络设计中的一个重要环节。
在选择网络拓扑结构时,我们需要考虑可靠性、性能、安全性和维护等因素。
文章结构的选择与运用技巧
文章结构的选择与运用技巧在写作过程中,选择合适的文章结构并运用技巧是非常重要的。
一个好的结构能够帮助读者更好地理解文章的主题和内容,使文章更具逻辑性和条理性。
本文将探讨文章结构的选择与运用技巧。
一、引言部分引言部分是文章的开端,是引导读者进入文章主题的关键部分。
在选择引言部分的结构时,可以采用提问、引用、故事等方式来吸引读者的注意力。
同时,引言部分还可以简要介绍文章的背景和目的,为后续内容的展开做铺垫。
二、主体部分主体部分是文章的核心,是对主题展开论述的部分。
在选择主体部分的结构时,可以采用时间顺序、因果关系、对比等不同的方式。
时间顺序适用于叙述性文章,可以按照事件发生的先后顺序进行叙述。
因果关系适用于说明性文章,可以通过阐述原因和结果的关系来展开论述。
对比适用于议论性文章,可以通过对比不同观点或事物的优缺点来支持自己的观点。
在主体部分的论述过程中,还可以适当使用例证、数据、实证等方式来支持自己的观点。
这样不仅可以增加文章的可信度,还可以使文章更具说服力。
三、结论部分结论部分是文章的总结和归纳,是对主题的最后总结和观点的表达。
在选择结论部分的结构时,可以采用回顾、展望、呼吁等方式。
回顾可以对文章的主要内容进行概括,强调文章的核心观点。
展望可以对未来的发展进行展望,为读者留下深思。
呼吁可以对读者提出具体的行动建议,引发读者的思考和行动。
四、段落结构的运用技巧在文章的每个段落中,也需要运用合适的结构来展开论述。
一个好的段落结构应该包括主题句、支持句和扩展句。
主题句是段落的核心句,概括段落的主要内容。
支持句是对主题句进行解释和支持的句子。
扩展句是对主题句和支持句进行进一步的扩展和解释,使文章更具深度和广度。
同时,在段落之间的过渡也是非常重要的。
可以通过使用过渡词语、重复关键词、使用引用等方式来实现段落之间的衔接,使文章的结构更加紧密和连贯。
总之,选择合适的文章结构和运用技巧是写作过程中必不可少的一部分。
3.1.2选择结构的几种形式
3.1.2选择结构的⼏种形式 选择结构通过判断某些特定条件是否满⾜来决定下⼀步的执⾏流程,是⾮常重要的控制结构。
常见的有单分⽀选择结构、双分⽀选择结构、多分⽀选择结构以及嵌套的分⽀结构,形式⽐较灵活多变,具体使⽤哪⼀种最终还是取决于要实现的业务逻辑。
循环结构和异常处理结构中也可以带有else⼦句,也可以看作是特殊形式的选择结构。
1 单分⽀选择结构 单分⽀选择结构是最简单的⼀种形式,其语法如下所⽰,其中表达式后⾯的冒号“:”是不可缺少的,表⽰⼀个语句块的开始,后⾯⼏种其他形式的选择结构和循环结构中的冒号也是必须要有的。
if 表达式: 语句块 当表达式值为True或其他等价值时,表⽰条件满⾜,语句块将被执⾏,否则该语句块将不被执⾏,继续执⾏后⾯的代码(如果有)。
1 >>> x = input('Input two numbers:')2 Input two numbers:3 43 >>>4 >>> a,b = map(int,x.split())5 >>>6 >>> a7 38 >>> b9 410 >>>11 >>> if b > a:12 a,b = b,a #序列解包,交换两个变量的值131415 >>> print(a,b)16 4 317 >>> 注意:在Python中,代码的缩进⾮常重要,缩进是体现代码逻辑关系的重要⽅式,同⼀个代码块必须保证相同的缩进量。
养成习惯,严格遵循这个要求吧。
2 双分⽀选择结构 双分⽀选择结构的语法为: if 表达式: 语句块 1 else: 语句块 2 当表达式值为True或其他等价值时,执⾏语句块 1 ,否则执⾏语句块 2。
代码⽰例如下:1 l = [ '1','2','3','4','5' ]23if l:4print(l)5else:6print('Empty')789# 执⾏结果:['1', '2', '3', '4', '5'] 拓展知识:Python还提供了⼀个三元运算符,可以实现与选择结构相似的效果。
选择结构程序设计典型例题
#include <stdio.h> int main() {int year,leap; printf("enter year:"); scanf("%d",&year); if (year%4==0) if(year%100==0) if(year%400==0) leap=1; else leap=0; 采取锯齿形式 else leap=1; else leap=0; if (leap) printf("%d is ",year); else printf("%d is not ",year); printf("a leap year.\n"); return 0; 25 }
21
用变量leap代表是否闰年的信息。若闰 年,令leap=1;非闰年,leap=0。最 后判断leap是否为1(真),若是,则 输出“闰年”信息
22
解法1 #include <stdio.h> void main( ) { int year, leap=0; scanf(“%d”, &year); /* 输入年份值 */ if ((year%4= =0&&year%100!=0)||(year%400= =0)) leap=1; else leap=0; if(leap= =1) printf(“%d is leap ”, year); else printf(“%d is not leap ”, year); }
设每吨每千米货物的基本运费为p,货物重 为w,距离为s,折扣为d 总运费f的计算公式为f=p×w×s×(1-d)
29
折扣的变化规律:
折扣的“变化点”都是250的倍数 在横轴上加一种坐标c,c的值为s/250 c代表250的倍数 当c<1时,表示s<250,无折扣 1≤c<2时,表示250≤s<500,折扣d=2%
顺序结构、选择结构和循环结构的程序设计典型例题分析与解答
顺序结构、选择结构和循环结构的程序设计典型例题分析与解答1 在三种选择结构中,能用2个条件,控制从3个操作中选择一个操作执行的选择结构是______选择结构【分析】能用1个条件,控制某个操作做或不做的选择结构是单分支结构;能用1个条件,控制从2个操作中选择一个操作执行的选择结构是双分支结构;能用n(n>l)个条件,控制从n+ l个操作中选择一个操作执行的选择结构是多分支结构。
【答案】多分支2 在三种循环结构中,先执行循环操作内容(即循环体),后判断控制循环条件的循环结构是______循环结构。
【分析】当型循环结构是先判断控制循环的条件,条件成立,执行循环体;条件不成立,则退出循环体。
次数型循环结构也是先判断是否达到循环次数,没有达到循环次数,执行循环体;达到循环次数的,退出循环。
只有直到型循环结构才是先执行循环体,然后再判断控制循环的条件,如果条件成立,进行循环;条件不成立,退出循环。
【答案】直到型3 使用“getchar( )”函数时,程序的开头必须写一条包含命令为____________。
【分析】凡是使用系统函数的程序,都要在程序的开头写一条包含命令,包含命令中的“头函数.h”是一个文件,其中有关于该系统函数的定义。
系统函数“getchar( )”是在名为“stdio.h(标准输入输出函数)”的头函数文件中定义的。
【答案】#include"stdio.h"或#include<stdio.h>4 执行输入语句“scanf("x=%c,y=%d",&x,&y);”,要使字符型变量X的值为'A'、整型变量y的值为12,则从键盘上正确的输入是( )①'A'/②A/③x=A/ ④x=A,y=12/12/ 12/ y=12/ 说明:备选答案中的"/"表示回车换行键【分析】输入语句的格式控制符串中的“x=”、“,”、“y=”都是非格式控制符,在输入时必须原样位置输人,所以只有备选答案④才符合这个要求。
6年级信息技术《选择结构》教学设计
第六课选择结构一、概述《选择结构》是河南大学出版社与河南电子音像出版社出版的小学信息技术六年级上册第六课,共1课时。
学习内容包括Scratch中的选择结构积木“如果…那么…”及“如果…那么…否则”、选择结构积木的应用实例——聪明的小鸭。
选择结构在Scratch编程中面临不同情况需要采取不同的处理方法时比顺序结构、循环结构更有优势,是Scratch编程中三种结构之一,与顺序结构、循环结构混合使用能编写复杂的程序。
二、学习目标分析1.知识与技能(1)学习选择结构积木“如果…那么…”、“如果…那么…否则…”;(2)通过制作“聪明的小鸭”游戏,在“捉迷藏”游戏基础上加大难度系数,合理想象和创新。
2.过程与方法运用范例教学法,讲授基础知识;运用任务驱动法,培养学生主动探索的能力。
3.情感态度与价值观通过制作活动进一步激发学生对游戏制作的浓厚兴趣,体验自主学习与创新探索的快乐过程,培养学生的实践能力与创新精神。
三、学习者特征分析通过对六年级学生学习Scratch编程时的观察和阶段性的Scratch编程作品展示,发现六年级学生具备一定的逻辑思维能力和推理演绎能力,善于动脑思考,对Scratch编程比较感兴趣,能够编写个性化的程序。
本节课之前,已经学习了算法与与程序、Scratch编程入门、顺序结构、循环结构等知识,良好的知识结构为为本节课学习奠定了基础。
四、教学策略选择与设计教学设计中,以学生为主体,以教师为主导,注重学生的学习体验。
从生活出发,以旧引新,便于学生从已有经验出发,由浅入深学习新知。
采用范例演示法,边演示、边启发,对基础知识进行讲授,并提供学习支架。
通过任务驱动法,让学生通过自主、合作、探究学习,突破学习难点,最终完成满意的作品。
五、教学资源与工具设计在多媒体计算机教室授课,教师通过教师端和投影仪可以演示PPT和操作过程,学生每人一台计算机,保证实践操作的质量。
教学资源中,使用多媒体课件,图文声像并茂,便于教学过程的展开;导入、演示、编写等环节使用Scratch程序,如:小猫过马路.sb2、捉迷藏2.sb2,更契合课程特点。
农村自建房选择什么结构好
对于农村家里有宅基地的人来说,都想在家里建一栋大别墅。
但是房子的结构有很多种,比如砖结构、轻钢、框架、木质结构等等,那么,农村自建房应该选择什么结构?哪种结构适合我们?下面,小编就跟大家一起来看下几种常见的房屋结构。
一、砖混结构砖混结构是最易被自建房接受的,农村里大多数都是这种结构的房子,以砖为基础,水泥砌筑,造价低,便于施工,用的都是最常用的材料。
虽然国家禁了红砖,但还是有不少地方都用这种砖在建,或者用其他替代性的砖,就算它费时费力,很多人还是觉得砖混结构的有安全感些,所以目前它仍然是不可取代的一种建筑结构。
二、框架结构框架结构是由梁和柱用钢筋共同组成的,和砖混结构最大的区别就是墙体承重的问题,框架结构的墙体主要是起到一个围合和分隔的作用,承重靠得的梁柱。
高层建筑一般用框架结构的多,可以减少自身负重、节省材料。
三、剪力墙结构剪力墙结构是用钢筋混泥土墙板来代替框架结构中的梁柱,它的纵横向承重结构全部为结构墙的结构,有着很好的承载能力,比框架结构有更好的抗侧力能力,因此,也可以建较高的建筑。
不过,剪力墙的灵活性稍差点,它的间距有一定限制,开间太大的建筑就不适用了。
四、轻钢结构轻钢结构是发展最快的结构类型,它自重轻、强度高、占用面积小,抗风抗震性好,施工难度低、运用范围广。
房子可以搬迁,材料都可回收,是可持续利用的。
随着大家环保意识的加强,轻钢结构的应用加强了,但是由于市场价格原因,很多人还是难以接受。
五、木结构木结构比较具有地方特色,受自然条件的限制,山区,林区采用的稍多一点。
木结构的房屋比较亲近自然,即古老又现代,有自重轻,制作方便等优点,但是在使用的过程中,一定要注意防腐、防虫、防火措施的应用。
农村自建房应该选择什么结构?以上介绍了五种结构,无论你选择哪一种,适合自己的就是最好的。
不过现在砖混结构还是大部分人的首选,毕竟建房子是百年家业。
以上内容由深圳宝家乡墅科技有限公司整理提供,宝家乡墅是一家以标准化产品的方式,整合供应链上的优质资源,为城市精英提供回乡建别墅的生活场景解决方案和整体交付服务的公司。
选择结构·
{ 语句(复合语els句e )2; }
选择结构
双分支 if (表达式) 语句1 else 语句2
多分支
if (表达式1) 语句1 else if (表达式2) 语句2 …… else 语句n
if 语句的嵌套
switch 语句
二、条件判断
条件判断的含义:
➢ 用选择结构检查所指定的条件是否满足,并 根据判断的结果决定执行哪种操作。
如:
if (x > 0) printf(”%d”,x);
计算机高级语言
选择结构程序设计
计算机科学与技术系 宋杰
2017 . 10
主要内容
一、 什么是选择结构 二、 条件判断 三、 选择结构的使用 四、 总结
一、什么是选择结构
什么叫“选择”
从小我们学习过: 语文课的造句练习:
如果……就…… 英语学习中句式:
if……then……
一、什么是选择结构
生活中的“选择”: ➢ 在现实生活中,需要进行判断和选择的情况是很
else printf(”%d”,-x);
当x为正时,输出x的值,否则输出-x
二、条件判断
关系运算符和关系表达式
“条件”在程序中用一个表达式表示
x>0
age>=70
关系运算符
a+b>c
b*b-4*a*c>0
’a’<’v’
二、条件判断
关系运算符及其优先次序
➢C语言提供6种关系运算符:
① < (小于) ② <= (小于或等于)
二、条件判断
“条件”在程序中用一个表达式表示
x>0
age>=70
a+b>c b*b-4*a*c>0
选择结构基础知识
程序的三种控制结构
程序结构
顺序结构 选择结构 循环结构
又称为分支结构。是根据给定的条件P是 否成立而选择执行块A还是块B。
条件P 不成立 成立
语句块A 语句块B
成立 条件P 不成立 语句块A 语句块B
选择结构的流程图与N-S图
CONTENTS
关系运算符和关系表达式
!、++、--
高
(a=3)>(b=5)
(a>b)!=(b<c)
①能被4整除,但不能被100整除。
逻辑运算符和逻辑表达式
逻辑运算符与逻辑表达式
所谓关系运算实际上就是“比较”运算,将两个数进行比较,判断比较的结果是否符合指定的条件。
在C语言中,逻辑运算的结果只能是1(真)或0(假),不可能是其他数值;
(year%4==0 && year%100!=0)||(year%400==0)
1.关系运算符和关系表达式
关系运算是条件判断中比较简单的一种。所谓关系运算实际上就是“比 较”运算,将两个数进行比较,判断比较的结果是否符合指定的条件。
➢ 关系运算符
关系运算符 > >= < <= == !=
含义
优先级
大于
大于或等于 这些运算符优先级相同,但 小于 比下面的优先级高
小于或等于
等于 这些运算符优先级相同,但 不等于 比上面的优先级低
【例】判别某一年year是否为闰年。 闰年的条件是符合下面二者之一: ①能被4整除,但不能被100整除。 ②能被400整除。
year%4==0 && year%100!=0 year%400==0
(year%4==0 && year%100!=0)||(year%400==0)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
printf ("x=%d, y=%d\n", x, y);
} 2019/5/24
程序3: 将上述if语句改为:
y= –1;
if (x! =0)
×
if (x>0) y=1;
else
y=0;
程序4:
y=0;
if (x>=0)
if (x>0) y=1;
×
else y= –1;
21
2019/5/24
4.2 switch语句
当条件具有特殊规律时,用switch语句比用if方 便。其中,构造swtich后的表达式是程序设计 的关键。
2019/5/24
举例
main() { int a,b=0;
clrscr(); printf(“\na=“); scanf(“%d”,&a); switch(a)
if (c>=50) printf("50<=c<=100\n");
else printf("c<50\n")
2019/5/24
再例如:
15
if(a>b) if(a>c) if(a>d) m=1; else m=2; else m=3;
问题:哪一个 else 和哪一个 if 相匹配?
规则:在嵌套的if~else语句中,else总是与 上面的离它最近的尚未配对的if 配对。
2019/5/24
举例
16
【例4.4】输入一个数,判断它是奇数还是 偶数,如果是奇数则进一步判断 它是否为5的倍数。
定义变量x
输入x的值
x是奇数
T
F
输出“odd”
x是5的倍数
输出“even”
T
F
是5的倍数
2019/5/24
程序:
17
main( ) { int x;
scanf ("%d",&x); if (x%2 != 0) { printf("%d is an odd \n",x) ;
scanf ("%d%d", &x, &y);
if ( x != y )
if ( x > y ) printf ("X>Y\n"); else printf ("X<Y\n"); else printf ("X=Y\n");
提倡缩格书写 有利于阅读程序
}
2019/5/24
if语句嵌套的形式
13
简单if语句的嵌套形式
break; break; break;
z==0或z!=0的比较 • 可用if((int)z) 代替
default: z=0;
}
if((int)z!=0) printf("%f%c%f=%f\n",x,op,y,z);
else printf ("%c is not an operator\n",op);
default: printf("$"); break; case 5: printf("&"); break;
} switch与break语句结合才能实现 程序的分支
2019/5/24
switch语句的简单应用
25
【例4.3】已知x=100,y=15,要求输入一个 算术运算符(+、-、* 或 / ),并 对x和y进行指定的算术运算。
2019/5/24
多重分支语句
7
语句一般格式
if (表达式1) 语句1 else if (表达式2) 语句2
else 语句3
…… else if (表达式m) 语句m else 语句 n
功能:
– 依次计算并判断表达式i,为非0时执行后面 的语句,都为0时,执行语句n
– 无论执行完那个语句分支,都转到后续语句
2019/5/24
程序:
11
#include "stdio.h"
main( )
{ char ch;
ch=getchar( );
if (ch>='A' && ch<='Z')
ch=ch+32;
printf("%c\n",ch );
}
可使用条件表达式代替
程Gpu序tc运ha行r情(ch况>如='下A:' && ch<='Z' ? ch+32:ch); gputchar (' \n')
运行jc4_3
main( )
{ float x=100,y=15,z; char op;
op=getchar( );
switch (op)
{ case '+': z=x+y; break; • 实型数通常不使用
case '-': z=x-y; case '*': z=x*y; case '/': z=x/y;
2019/5/24
4.1.2 if语句的嵌套
12
如果if的内嵌语句中又使用了一个if语句,
则构成if语句的嵌套。
【例4.a】比较两个整数的关系。 应该正确判断:
#include <stdio.h>
• if的内嵌语句
main( )
• if和else的配对
{ int x, y;
printf ("Enter integer X and Y:");
if (a==0) b=2; if (a==1) b=2; if (a!=0) b=2; if (a=1) b=2; if (a=0) b=2; if (a) b=2; 等价于 if (!a) b=2; 等价于
19
2019/5/24
–1 (x<0)
20
举例3: 有一函数 y= 0 (x=0)
1 (x>0) 编一程序,输入一个x值,输出y值。
思路:
• 设x和y为float型变量并赋初值;
• 输入的运算符op为char型变量;
• 根据op的值(为'+'、'-'、'*'、'/')进行x和y的 相加、相减、相乘、相除运算(选择分支);
• 还要考虑到输入字符不是+、-、* 或 / 时的情 况
2019/5/24
程序:
26
#include "stdio.h"
例如:当x大于5小于10时令x自增 iiff((x>55<x&<&10x<)10x) +x++;+;
正确判断内嵌语句 例如:if(x<y) { x=x+3; y=y-2; } else { x=x-3; y=y+2; }
18
2019/5/24
熟悉常用的if 表达式形式
例如有定义:int a,b=0; a等于什么值时,执行b=2 ;语句?
当a等于5,输出:&#$ 当a等于2,输出:#$ 当a是其他值,输出:$
2019/5/24
说明:
24
“case 常量表达式i:”等价于语句标号, 计算出的表达式值等于哪个语句标号,就 从哪个位置开始顺序向下执行语句序列。
∴ 语句位置影响运行结果
例如: switch (a) { case 2: printf("#"); break;
if (x%5==0) printf("%d is the times of 5 \n",x) ;
} else
printf("%d is an even \n",x) ; }
思考:如果没有,算法和输出如何?
2019/5/24
学习if语句的难点
if ~else 语句的配对 正确用表达式描述条件
22
switch语句的一般形式
switch (表达式) { case 常量表达式1: 语句序列1
case 常量表达式2: 语句序列2 …… case 常量表达式n: 语句序列n default : 语句序列n+1 }
功能:
– 计算表达式的值,与常量表达式的值比较,等于第i个值 时,顺序执行语句序列i、i+1、 …、 n+1
计算机程序设计 第4章 选择结构程序设计
本章主要内容
2
4.1 if语句 4.1.1 if语句的一般形式 4.1.2 if语句的嵌套
4.2 switch语句 4.2.1 switch语句的一般形式 4.2.2 break语句
4.3 选择结构程序设计举例
2019/5/24
简单分支语句
3
语句一般格式 if (表达式) 语句
可为算术、关系、逻辑、赋值 等表达式
内嵌语句,可为:
赋值语句 函数调用语句 控制语句 复合语句 空语句
功能:
– 计算表达式的值,如果是一个非0值(即 逻辑真),就执行内嵌语句,否则(即逻 辑假)跳过内嵌语句,顺序执行后续语句。
2019/5/24
简单分支语句的算法:
4
流程图
N-S结构图
有以下几种写法,请判断哪些是正确的?
程序1: main ( )
程序2:将上面程序的if语 句改为:
{ int x, y; scanf("%d", &x); if (x<0) y= –1; else if (x= =0) y=0;