第十一讲 选择结构

合集下载

第十一讲最优资本结构

第十一讲最优资本结构
只存在公司税和财务困境成本公司价值和债务额变化关系两条线的综合使公司实际价值v为倒u型曲线只存在公司税和财务困境成本公司价值和债务额变化关系两条线的综合使公司实际价值v为倒u型曲线当债务水平较低时公司陷入财务困境的可能性较小债务增加将提高公司的实际价值当债务水平较低时公司陷入财务困境的可能性较小债务增加将提高公司的实际价值当债务水平已经很高时财务困境成本对公司价值的影响将超过税盾增加公司价值的影响使公司的实际价值下降当债务水平已经很高时财务困境成本对公司价值的影响将超过税盾增加公司价值的影响使公司的实际价值下降当债务的边际收益等于债务的边际成本时公司实际价值达到最大当债务的边际收益等于债务的边际成本时公司实际价值达到最大对应的债务水平为公司最优的债务额最优资本结构对应的债务水平为公司最优的债务额最优资本结构上述分析类似于微观经济学当边际收益等于边际成本时厂商利润达到最大此时厂商的选择构成最优产出水平上述分析类似于微观经济学当边际收益等于边际成本时厂商利润达到最大此时厂商的选择构成最优产出水平小结
一个例子 考虑一个每年EBIT为100元的公司 (不存在经营决策改进所导致的现金流增 长) 公司希望发行最大限度的债务(等于每年 的EBIT)以抵税 以10%的利率发行债务1000元
不存在现金流增长的公司现金流量
时期 EBIT 利息 1 100 2 100 3 100 4 100 … …
(100) (100) (100) (100) … 0 0 0 …
Case2:个人税率不相同的情形 假设股利个人税TS为10%,利息个人税TB为50%
股利 股利个人税 个人税后股利剩余 利息 利息个人税 个人税后利息剩余 个人税后总现金流 计划1 650 (65) 585 0 0 0 585 计划2 390 (39) 351 400 (200) 200 551

选择结构3种基本形式

选择结构3种基本形式

选择结构3种基本形式选择的三重奏咱这一辈子啊,就像走在岔路口,到处都是选择。

选择结构呢,有三种基本形式,就像咱生活里那些常见的事儿一样。

先说说顺序结构,这就好比早上起床穿衣服,得先穿上内衣再穿外衣,一步一步来,按部就班。

这是最直白、最简单的方式,就像一条直直的路,没有拐弯抹角。

接着是分支结构,这可有趣了。

就像我有次去商场买衣服,我兜里就只有一百块钱。

我看到一件漂亮的连衣裙,要八十块,可同时我又看到一件酷酷的T 恤只要五十块。

我心里就开始纠结啦,这就是分支结构。

如果我买了连衣裙,那我可能就没钱吃午饭了;要是买T 恤呢,我还能剩下点钱去买个小零食。

我在那两件衣服面前站了好久,心里像有两个小人在打架。

一个说:“买裙子吧,穿上你就是小仙女。

” 另一个说:“T 恤多实用啊,还能省点钱。

” 最后我一咬牙,还是选了T 恤,毕竟肚子饿的感觉可不好受啊。

再说说循环结构。

我减肥的时候就有这种体验。

我计划每天做五十个仰卧起坐,第一天,我鼓足了劲做完了,累得气喘吁吁。

第二天,想到还要做,心里有点犯怵,但还是坚持做了。

就这样,一天又一天,每天都重复做着仰卧起坐这个动作,这就是循环。

有时候真想放弃,可是看看镜子里的自己,又有了动力。

不断地重复这个过程,期待着有一天能穿上那些漂亮的小码衣服。

生活中的选择无处不在,这些选择结构就像隐藏在背后的小秘密,悄悄地影响着我们的每一个决定。

从每天早上吃什么,到未来要做什么工作,选择的形式一直在发挥作用。

就像我选择写这篇关于选择结构的文章一样,也是一种选择呢。

不管是顺序的按部就班,还是分支的纠结犹豫,亦或是循环的坚持重复,都是我们生活的一部分。

这就是选择结构在生活中的模样,实实在在又充满趣味。

选择结构程序设计

选择结构程序设计

选择结构程序设计选择结构程序设计什么是选择结构程序设计选择结构程序设计是一种编程范例,用于根据给定的条件决定程序的执行路径。

在选择结构中,程序根据条件的真假选择执行不同的代码块。

选择结构可以帮助程序员根据不同情况采取不同的操作,增加程序的灵活性和适应性。

在选择结构程序设计中,最常见的选择结构是`if-else`语句和`switch`语句。

if-else语句`if-else`语句是选择结构中最基本和常用的语句。

它的基本语法为:markdownif (condition) {// 如果 condition 为真,执行这里的代码} else {// 如果 condition 为假,执行这里的代码}`if-else`语句的执行过程是这样的:判断条件`condition`的真假,如果为真,则执行`if`语句中的代码块;如果为假,则执行`else`语句中的代码块。

在`if`和`else`语句中,可以嵌套其他的`if-else`语句,以实现更复杂的逻辑判断。

除了`if-else`语句,还有一种类似的语句是`else if`语句。

`else if`语句用于在多个条件之间进行选择,它的语法为:markdownif (condition1) {// 如果 condition1 为真,执行这里的代码} else if (condition2) {// 如果 condition1 为假,但 condition2 为真,执行这里的代码} else {// 如果 condition1 和 condition2 都为假,执行这里的代码}switch语句`switch`语句是另一种选择结构,它用于根据给定的条件选择执行不同的代码块。

`switch`语句的基本语法为:markdownswitch (expression) {case value1:// 如果 expression 的值等于 value1,执行这里的代码break;case value2:// 如果 expression 的值等于 value2,执行这里的代码break;default:// 如果 expression 的值不等于任何一个 case 值,执行这里的代码break;}`switch`语句的执行过程是这样的:计算表达式`expression`的值,然后与每个`case`的值进行比较,如果找到匹配的值,则执行对应的`case`代码块,并通过`break`语句结束`switch`语句。

选择结构教学设计

选择结构教学设计

选择结构教学设计选择结构是编程中一种重要的控制结构,它允许根据一个条件的结果来选择执行不同的代码块。

本教学设计旨在帮助学生理解选择结构的概念,并能够在编写程序时正确应用选择结构。

教学目标:1.理解选择结构的概念。

2.能够使用条件语句来编写选择结构。

3.能够解决实际问题时正确应用选择结构。

教学重点:1.选择结构的概念和使用条件语句。

2.如何根据问题需求正确地编写选择结构。

教学准备:1.计算机编程编课程教材和教学资料。

2.计算机编程软件和示例代码。

3.板书和笔。

教学过程:引入:1.通过提问和讨论来引起学生的兴趣,比如“在日常生活中,我们经常需要根据一些条件来做出不同的决策,你们能举一些例子吗?”2.引导学生思考,在编写程序时,我们也需要根据条件来执行不同的代码块,那么你们知道如何实现吗?讲解理论:3.介绍选择结构的概念和作用。

板书示例代码,比如:```if (条件)//执行代码块A} else//执行代码块B```4.解释条件语句的含义和用法。

板书示例代码,比如:```if (条件1)//执行代码块A} else if (条件2)//执行代码块B} else//执行代码块C```5.提供实际例子来帮助学生理解选择结构的应用。

比如,假设有一个促销活动,如果购买金额超过500元,可以打8折,否则不打折。

请编写一个计算应付金额的程序。

实践操作:6.给学生一些小练习来巩固所学知识。

比如,让学生编写一个程序,根据用户输入的成绩,判断是否及格并输出相应的结果。

拓展延伸:7.提供一些拓展延伸的问题来鼓励学生思考和扩展应用。

比如,让学生设计一个程序,根据用户输入的年龄判断是否可以购买酒类。

总结:8.对本节课的内容进行总结,并回顾重点知识点。

强调选择结构的重要性和应用场景。

评价:9.给学生一些习题和编程任务,让他们独立完成并提交作业。

可以设置一些测试用例来检查他们是否正确地应用了选择结构。

教学资源:1.计算机编程课程教材和教学资料。

《选择结构》课件

《选择结构》课件

我们可以使用 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语句是一种根据不同 值进行条件判断的选择结构。

选择结构PPT课件

选择结构PPT课件
end; wirteln(max,min); end.
方法2:
如何表示条件?
1、日常生活中,我们经常要对某一个问题进行真、假或是、否的判断,如:“小明是男孩”。对 于命题只有对或错、是与否的两种结论。布尔型数据可以来表示这个结果,用“真”“假”来 表示,“真”对应的逻辑值是“true”,假对应的是“false”。 要注意:“TRUE”“FALSE”是两个用字母表示的常量,可以理解为数,它们是用来表示逻辑关 系的,其大小为:False<true。
第五课
——分支结构(选择结构)
知识点回顾:
程序在运行的过程中,一句接着一句去做的, 按出场的顺序进行
赋值语句:变量名:=表达式
先计算后赋值
输入语句:
Read(变量列表);——变量间用“,”隔开 readln(变量列表); Readln;
输出语句:单场宽,双场宽(用来输出对齐)
先计算后输出
2、关系运算符:>(大于),<(小于),=(等于),<>(不等于),>=(大于等于),<=(小于等于) 关系表达式所得到的值就是布尔值。 比较顺序为:空格<’0’<……<’9’<’A’<……<’Z’<’a’<……<’z’
3、逻辑运算结构也是布尔类型 not(非) and(与) 如:(5>3) and (7&为已婚(marrigenrat)年龄(age)在26岁以上工作年限(workingage) 在5年以上
例4:x为年份,判断x是否是闰年,闰年的条件是:能被4整除但是不能被100整除,或者能被400 整除
条件语句的嵌套结构
一、格式 格式1:
if 条件 then 语句; 格式 2:

选择结构PPT

选择结构PPT

7.如图,算法框图能判断任意输入的数x的奇 偶性,则其中判断框内的条件是( D )
(A)m=0 (B)x=0 (C)x=1 (D)m=1
8.如图所示是某一函数的求 值的算法框图,则满足此算 法框图的函数解析式为
y_____4x_--_x2_,,_xx___33_,.,
9.如图所示,给出了一 个算法框图,若要使输 入的x值与输出的y值相等, 则这样的x有( )C (A)1个 (B)2个 (C)3个 (D)4个
则式子:(2sin 300) ln e lg100 (1)-1的值 3
是6
5.阅读如图所示的算法框图, 回答下列问题。
(1)若x=3,则输出的y=_4_; (2)若x=-2,则输出的y=_4_; (3)它所表示的函数是____。
6.若x=-1,写出右图 算法框图描述的算法 的运行结果( A ) (A)-5 (B)5 (C)-1 (D)-2
(4)输出y.
1.某居民区的物业管理部门每月向居民收取卫 生费,计费方法是:3人和3人以下的住户,每 户收取5元;超过3人的住户,每超出一人加收 1.2元,设计一个算法,根据住户的人数,计算 应收取的卫生费,并画出算法框图.
解:设x为住户的人数, y为应收取的卫生费, 算法步骤如下:
(1)输入x; (2)若x 3,则y 5;否则, y 5 1.2(x 3);
(3)输出y.
2.由键盘输入三个 整数a,b,c,输出 其中最大的数, 画出其算法框图.
3.已知函数f (x) x 3,
如图所示的算法框图表 示的是给定x值,求其 相应函数值的算法,请 将该算法框图补充完 整,其中 (1)处应 填X<3 , (2)处应填y=x-3
4.定义某种运算S a b, 运算原理如图所示,

选择结构·

选择结构·

{ 语句(复合语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

第十一讲 机构的组成原理及其结构分类

第十一讲 机构的组成原理及其结构分类

第十一讲 机构的组成原理及其结构分类一、机构的组成原理1、基本机构由一个原动件和一个机架组成的双杆机构,如图2—36所示。

a)原动件作移动 (如直线电机、流体压力作动筒)。

b)原动件作转动 (如电动机)。

2、基本杆组机构具有确定运动的条件为原动件数=自由度。

现设想将机构中的原动件和机架断开,则原动件与机架构成了基本机构,其F =1。

剩下的构件组必有F =0。

将构件组继续拆分成最简单F =0的构件组(不能再拆),如图2—37所示。

最简单的F =0的构件组,称为基本杆组。

举例:将图示八杆机构拆分成基本机构和基本杆组,如图2—38所示。

结论:该机构包含机架、原动件和两个基本杆组推论:任何一个平面机构都可以认为是机架、原动件的基础上,依次添加若干个杆组所形成的。

机构的组成原理:图2—36图2—37图2—38机构=机架+原动件+基本杆组二、机构(结构)分类设基本杆组中有n 个构件,则由条件F =0有:F =3n -2P L -P h =0P L =3n/2 (低副机构中P h =0 )∵ P L 为整数, ∴ n 只能取偶数。

n = 2 4 n>4P L = 3 6n=2的杆组称为Ⅱ级组—应用最广而又最简单的基本杆组。

共有5种类型,典型Ⅱ级组如图2—39所示。

n=4(P L =6)的杆组称为Ⅲ级组,如图2—40所示。

结构特点:其中一个构件有三个运动副。

IV 级组:有两个三副杆,且4个构件构成四边形结构,如图2—41所示。

内端副—杆组内部相联。

外端副—与组外构件相联。

机构的级别:机构按所含最高杆组级别命名,如Ⅱ级机构,Ⅲ级机构等。

注意:1、杆组的各个外端副不可以同时加在同一个构件上,否则将成为刚体。

如图2—42。

2、机构的级别与原动件的选择有关,如图2—43。

图2—39图2—40图2—41图2—43图2—42。

选择结构

选择结构
选择结构
复习
1 什么叫做流程图?
流程图的概念: 流程图的概念: 流程图又叫程序框图. 流程图又叫程序框图.它是由一些程序 框和流程线组成,能准确、 框和流程线组成,能准确、直观地表 示算法的图形. 示算法的图形.
起、止框 流 程 图 常 用 图 框 形 处理框 输入、 输入、输出框
2 什么叫算法的顺序结构? 按照步骤依次执行的一个算法结构, 按照步骤依次执行的一个算法结构,称 为顺序结构
ax > 8(a ≠ 0)
开始 其算法流程图如下 输入a 是

a>0
不等式的解为x>8/a
不等式的解为x<8/a
结束
选择结构的概念: 先根据条件作出判断,再决定执行哪一步操 作的算法结构称为选择结构(或分支结构和 条件结构)
判断条件真假
选择结构图示
假 真
步骤乙
步骤甲
选择结构和顺序结构不同的地方在哪里?
选择结构不同于顺序结构的地方是:它 不是依次执行操作指令进行运算,而是 依据条件作出判断,选择执行不同指令 中的一个。
例题讲解
通常说一年有365天,它表示地球围绕太阳转 一周所需要的时间,但事实并不是这样。根据天 文资料,地球围绕太阳转一周所需的精确时间是 365.242天,称之为天文年。这个误差看 似不大,却引起季节和日历之间难以预料的大变 动。在历法上规定四年一闰,百年少一闰,每四 百年又加一闰。如何判断某一年是闰年呢?请设 计一个算法,解决这个问题,并用流程图描述这 个算法。
第一步,判断x是否大于0, 第一步 若x>0,则x的绝对值等于 x,令m=x;若x≤0,则执行 第二步.
输入x x>0 是 m=x 输出m 否
第二步, x的绝对值

选择结构-高中数学知识点讲解

选择结构-高中数学知识点讲解

选择结构1.选择结构【知识点的认识】选择结构:在一个算法中,常会遇到条件的判断.算法的流程根据条件是否成立有不同的流向,这种根据条件作出判断,再决定执行哪一种操作的结构称为选择结构.表示形式:注意:(1)当算法执行到P 时,无论条件P 是否成立,都必须选择A、B 其中一个执行框执行;(2)A、B 执行框中可以有一个为空,即不执行任何操作.(3)条件结构在书写的时候要加上判断条件(只能是“Y/N”或“是/否”,不存在“不一定”),以便进行选择.【命题方向】掌握选择结构的特点,注意与其他算法结构区分,能正确应用选择结构(计算、画图),常见与分段函数结合一起进行考查,题目难度不大,考查的是基本概念.1.考查选择结构的功能特点例:如图,是某算法流程图的一部分,其算法的逻辑结构为()1/ 3A.顺序结构B.判断结构C.条件结构D.循环结构分析:根据条件结构形式(如下图),进行判定即可.解答:此结构中含有一个判断框,算法执行到此判断给定的条件r=0 是否成立,选择不同的执行框(A 框、B 框).无论r=0 条件是否成立,只能执行A 框或B 框之一,不可能既执行A 框又执行B 框,也不可能A 框、B 框都不执行.故该结构是条件结构故选C.点评:本题主要考查了选择结构的定义,算法是新课标中新增的内容,在高考中常以小题出现,江苏高考都以填空的形式出现,值得重视.2.考查选择结构的应用例 1:根据给出的算法框图,计算f(﹣1)+f(2)=()A.0 B.1 C.2 D.4分析:程序的功能是求分段函数f(x)={4푥,푥≤02푥,푥>0的值,分别求出f(﹣1),f(2),可得答案.2/ 3解答:由程序框图知:程序的功能是求分段函数f(x)={4푥,푥≤02푥,푥>0的值,∴f(﹣1)=﹣4;f(2)=22=4,∴f(﹣1)+f(2)=0.故选:A.点评:本题考查了选择结构的程序框图,根据框图流程判断算法的功能是关键.例 2:某次考试,满分 100 分,按规定x≥80 者为良好,60≤x<80 者为及格,小于 60 者不及格,画出当输入一个同学的成绩x 时,输出这个同学属于良好、及格还是不及格的程序框图.分析:根据题意,设计的框图应为条件结构,按照题意画出程序框图如下.解答:第一步:输入一个成绩X(0≤X≤100)第二步:判断X 是否大于等于 80,若是,则输出良好;否则,判断X 是否大于等于 60,若是,则输出及格;否则,输出不及格;第三步:算法结束点评:本题考查程序框图,以及条件结构,需要按照题意画出程序框图,考查了用程序框图表示算法.属于基础题.3/ 3。

高中信息技术《选择结构》优质课教学设计、教案

高中信息技术《选择结构》优质课教学设计、教案
在完成一个个具体的任务的过程中掌握分支选择结构的格式;
2) 以具体的任务为外驱力,在教师的引导下,通过学生个体的自主探究
和相互间的协作学习,提高学生用算法解决问题的综合应用能力
教师活动
学生活动
设计意图
创设情境引入课题
学生朗读、翻
这是英文中用IF来描

述根据条件的不同,会
教师活动:出示两条英文语句,请学生
【教学目标】
(1)掌握分支结构的用法与用途
(2)掌握IF语句的格式,理解它的功能与执行流程
(3)灵活运用IF语句解决一些实际问题
(4)既要自主探究,又要学会跟同学合作交流
【重点难点】
教学重点:掌握分支选择结构的格式
教学难点:对解决问题的方法和步骤的理解,并能根据实际问题写出代码。
【教学策略】
(1) 通过教师讲解和演示,利用任务驱动,通过学生分组探究,协作学习,
选择结构
【教学分析】
“选择结构”主要内容是用选择结构编写简单的程序解决具体问题。用选择结构 编写简单的程序解决具体问题是在学生已经掌握了程序设计数据的表示与处理 的基础上,理解了顺序结构的前题下提出的。
通过本课的学习,可以促进学生对问题解决方法和思想的理解与掌握,从 而提升学生的问题解决能力,让学生在按照一定的流程解决问题的过程中,去 体会和理解程序设计的思想,而且也为多分支选择结构的学习打下基础。
“幸福”,输入其他,则表示“不幸福”。
(3)当其感受到幸福就在图像框中出示 一张笑脸的图片,否则就出示一张苦脸 的图片。
编写程序:
提供给学生填写好程序界面的待完善程 序。
通过对几个中文实例展示分析,引出在
vb中If语句的基本用法。
1、单分支结构

【公开课课件】《选择结构》课件

【公开课课件】《选择结构》课件
End if
实践:如果Text1中输入abc, 那么Text2输出“密码正确”, 否则输出“密码错误”
开始
判断是否输入”abc” 是
输出“密码正确”
输出“密码错误”
结束
任务一:
判断某同学成绩是否及格,在Text1输入成绩,如果大于等 于60,则在Text2中显示“及格”,否则显示“不及格”。
任务二:
电梯的最大容量为13人,在此范围内电梯能正常运行,超出 了这个范围电梯将发出警报。
选择结构
复习:
VB的程序结构分为:顺序结构、选择结构、循环结构 顺序结构的基本特点:整个程序从上到下顺序执
行,没有分支,没有重复。
如:求圆的面积、袖珍计算器等程序
朗读: If you fell happy then you will smile. If you fell happy then you will smile else you will sad.
语法:
If……Then If……Then……Else
VB程序设计实例:若Text1输入“abc”,那么Text2输出“密码正确”。
开始
判断是否输入”abc” 是
输出“密码正确” 结束
If
单 If…then
语 句
Байду номын сангаас
分… 支 End if

开始


条件判断



语句块
结束
If…then 双… 分 Else 支…

选择结构的概念-推荐精选PPT

选择结构的概念-推荐精选PPT
如果大于5,则算法结束。 ❖ S6 输出sum
上述结果正确吗?
i←i+1 Sum ← Sum + i
当型结构
i<5?


i←i+
Sum ← Sum + i
i←i+1
解决方法就是加上一个判断,判断 是否已经加到了5,如果加到了则
Sum←Sum + i
退出,否则继续加。

请填上判断的条件。
i≥5? 是
❖ S4 i←i+1 ❖ S5 如果i不大于5,则返回执行S3 ,S4 ,S5
如果大于5,则算法结束。 ❖ S6 输出sum
引进一个计数变量,通过循环结构实 现程序简单化
❖ S1 sum←=0 ❖ S2 i←0 ❖ S3 i←i+1 ❖ S4 sum←sum+i ❖ S5 如果i不大于5,则返回执行S3 ,S4 ,S5
注:1.当型循环与直到循环的区别
①当型循环可以不执行循环体,直到循环 至少执行一次循环体. ②当型循环先判断后执行,直到型循环先 执行后判断.
③对同一算法来说,当型循环和直到循环的 条件互为反条件.
注:2.选择结构与循环结构的区别
选择结构通过判断分支,只是执行一次;循 环结构通过条件判断可以反复执行.
延伸、设计一个计算1,2,3, ﹍,10的平均数的算法.
分析:先设计一个循环依次输入1-10, 再用一个变量存放这些数的累加和, 最后除以10。
例2 设计一个计算10个数的平
均数的算法.
解:S1 S←0
把0赋值给变量S;
S2 I←1
把1赋值给变量I;
S3 输入G
输入一个数;
S4 S←S+G
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

最基本的程序结构,按照代码编写的顺序,从上到下执行。

根据要完成的功能,把这些工作编写成代码序列,然后按照这样的顺序执行就可以了。

例:下面的代码输出数字1到5
System.out.println(1);
System.out.println(2);
System.out.println(3);
System.out.println(4);
System.out.println(5);
程序运行的时候,先执行第一行,然后第二行……直到执行完所有行。

除了这种顺序结构之外,还有选择结构和循环结构。

本次内容介绍选择结构,下次介绍循环结构。

选择结构
在程序执行的过程中,会根据特定的条件选择执行某些语句,例如要计算两个整型变量a和b的最大值,有可能是a,也有可能是b,这时候需要根据a和b的关系来选择把a的值作为最大值,还是把b的值作为最大值。

选择结构包括两个:if和switch。

1. if语句
if语句就是在满足一定条件的时候,会执行一些语句。

基本结构:
if(条件表达式)
{
语句
}
条件表达式的结果必须是boolean类型的值,要执行的语句可以是多条,每条语句以分号结束即可。

如果条件表达式的值为true,将执行括号中的语句。

如果条件表达式的值为false,则不会执行括号中的语句。

【例】求a和b的最大值。

// IfTest.java
public class IfTest {
public static void main(String[] args) {
int a = 10;
int b = 8;
int max = a;
if(a<b)
{
max = b;
}
System.out.println("最大值为:"+max);
}
}
运行结果为:
最大值为:10
如果括号中要执行的代码只有一行,可以不写括号,上面代码中main方法中的代码可以改写成:
int a = 10;
int b = 8;
int max = a;
if(a<b)
max = b;
System.out.println("最大值为:"+max);
if语句还可以被用于在两组语句中选择执行一组,要么执行第一组,要么执行第二组。

基本结构如下:
if(条件表达式)
{
语句1
}
else
{
语句2
}
如果条件表达式的值为true,就执行语句1,否则将执行语句2。

语句1和语句2总会有一个被执行。

语句1和语句2都可以是多行,如果只有一行,则相应的括号可以省略。

例:使用if和else,完成上面的求最大值的功能。

使用下面的代码替换上面例子的main方法中的代码即可。

int a = 10;
int b = 8;
int max;
if(a<b)
{
max = b;
}
else
{
max = a;
}
System.out.println("最大值为:"+max);
运行的结果与上面的相同。

else后面的语句本身也可以使用if语句,这时候就会出现这样的结构:if(条件表达式1)
{
语句1
}
else if(条件表达式2)
{
语句2
}
[else{语句3}]
[else{语句3}]表示这部分内容可以有,也可以没有,需要根据情况而定。

这种格式的作用是:如果条件表达式1的结果为true,执行语句1,如果条件表达式1的结果为false,而条件表达式2的结果为true,执行语句2,否则执行语句3(如果有最后的else)。

这时候完成的功能不再是在两个语句中选择执行一个,而是在多个语句中选择执行一个,这时候可以嵌套很多层。

【例】整型变量a的值可能是1、2、3和4,如果a为1,则输出“进行加法运算”,a为2,则进行减法运算,a为3,则进行乘法运算,a为4,则进行除法运算。

// IfElseTest.java
public class IfElseTest {
public static void main(String[] args) {
int a=3;
if(a==1)
System.out.println("进行加法运算");
else if(a==2)
System.out.println("进行减法运算");
else if(a==3)
System.out.println("进行乘法运算");
else
System.out.println("进行除法运算");
}
}
运行结果为:
进行乘法运算
如果改变a的值,运行结果会发生相应的变化。

2. switch语句
switch语句完成的功能是在多种情况中选择一个执行。

就像上面的例子,根据整型变量a的值,输出不同的内容,也就是执行不同的语句,就可以使用switch语句。

switch语句的基本结构如下:
switch(表达式)
{
case 值1:语句1
case 值2:语句2

case 值n:语句n
default:语句n+1
}
如果表达式的值为“值1”,则从“语句1”开始执行,如果表达式的值为“值2”,则从“语句2”开始执行,如果表达式的值为“值n”,则从“语句n”开始执行,如果表达式的值没有与任何case匹配,则执行default,进行匹配
的顺序是从前到后。

这里的“语句1”、“语句2”、“语句n”和“语句n+1”
指的不是一条语句,可以是多条语句。

先看下面的例子:
【例】
// SwitchTest.java
public class SwitchTest {
public static void main(String[] args) {
int a=2;
switch(a)
{
case 1:System.out.println("进行加法运算");
case 2:System.out.println("进行减法运算");
case 3:System.out.println("进行乘法运算");
case 4:System.out.println("进行除法运算");
default:System.out.println("a的值不合法");
}
}
}
运行结果为:
进行减法运算
进行乘法运算
进行除法运算
a的值不合法
从运行结果上看,并没有达到预期的目的,按照预期应该只输出“进行减法运算”,也就是运行结果的第一行。

为什么会得到这样的结果,是因为switch
结构中,匹配成功之后的所有代码都会执行,也就是case表达式仅仅决定了程
序的入口。

如果把变量a的类型定义成long类型,编译会报错。

所以应该注意
两点:
(1)表达式的结果可以是short类型、byte类型、int类型、char类型和实现Enumeration接口的类型。

不能使用long、float和double等。

(2)case匹配成功,只确定程序的入口。

要完成上面的功能,需要在每个case语句之后添加一个break,beak语句可以跳出选择结构,不再执行后面的代码,修改后的代码如下:
【例】
// SwitchTest2.java
public class SwitchTest2 {
public static void main(String[] args) {
char a=2;
switch(a)
{
case 1:System.out.println("进行加法运算");break;
case 2:System.out.println("进行减法运算");break;
case 3:System.out.println("进行乘法运算");break;
case 4:System.out.println("进行除法运算");break;
default:System.out.println("a的值不合法");
}
}
}
运行的结果为:
进行减法运算
这就是希望的结果了。

if语句和switch语句都是选择结构,如果选择比较少的情况应该使用if语句,如果选项比较多的时候应该使用switch。

另外,if语句的条件是布尔类型,而switch语句的条件是整数类型(包含char类型,而不包含long类型)和枚举类型。

【注意】不管使用if语句还是使用switch语句,都要把最常用的情况放在最前面,因为这样平均匹配次数就少了,如果把最常出现的选项放在了最后,这样每次都要进行几乎所有的匹配。

相关文档
最新文档