- 1、本文档共36页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
pascal-3.选择结构程序设计
例3.8 输入三角形的三边,判断它是否直角三角形,若是则输出“yes”,否则输出“no”,若根本形成不了三解形则输出“not a triangle”。 【分析】 首先判断用户输入的数据是否能够构成三角形,然后再判断它是不是直角三角形。 Program ex3_8; Var a,b,c : integer; begin readln(a,b,c); if (a+bc) and (b+ca) and (c+ab) then if (a*a+b*b=c*c) or (b*b*+c*c=a*a) or (c*c+a*a=b*b) then writeln(yes) else writeln(no) else writeln(not a triangle.) end. 第三节 情况语句(CASE语句) 上面我们知道可以用嵌套的if语句实现多分支的选择结构。但是如果分支越来越多时,用嵌套的if语句实现多分支就显得繁杂。当多分支选择的各个条件由同一个表达式的不同结果值决定时,可以用case语句实现。它的选择过程,很象一个多路开关,即由case语句的选择表达式的值,决定切换至哪一语句去工作。因此在分支结构程序设计中,它是一种强有力的手段。在实现多路径分支控制时,用case对某些问题的处理和设计,比用if语句写程序具有更简洁、清晰之感。 情况语句的一般形式: case 表达式 of 情况标号表1:语句1; 情况标号表2:语句2; : 情况标号表n:语句n; else 语句n+1; end; 其中case、of、end是Pascal的保留字, 表达式的值必须是顺序类型,它可以是整型、布尔型及以后学习的字符型、枚举型和子界型。情况标号表是一串用逗号隔开的与表达式类型一致的常量序列。语句可以是任何语句,包括复合语句和空语句。 case语句的执行过程 先计算表达式(称为情况表达式)的值,如果它的值等于某一个常量(称为情况常量,也称情况标号),则执行该情况常量后面的语句,在执行完语句后,跳到case语句的末尾end处。 说明 ①情况表达式必须是顺序类型的; ②情况常量是情况表达式可能具有的值,因而应与情况表达式具有相同的类型; ③情况常量出现的次序可以是任意的; ④同一情况常量不能在同一个case语句中出现两次或两次以上; ⑤每个分语句前可以有一个或若干个用逗号隔开的情况常量; ⑥如果情况表达式的值不落在情况常量的范围内,则认为本case语句无效,执行case语句的下一个语句。Free pascal中增加了一个“否则”的情况,即增加一个else子句,但也是可省的。 ⑦每个常量后面只能是一个语句或一个复合语句,以分号结束。 例3.9 根据x的值,求函数Y的值: 【分析】利用case语句进行程序设计, 关键在于巧妙地构造情况表达式。本例中三种情况可用一个表达式区分出来:Trunc(x/100)。因为x在(0,100)之间时表达式值为0;x在[100,200)时表达式值为1 ;其余部分可用else子句表示。源程序如下: program ex3_9; var x,y:real; begin write(Input x:);readln(x); case trunc(x/100) of 0:y:=x+1; 1:y:=x-1; else y:=-1; end; //end of case,每个case对应一个end writeln(x=,x:8:2,y=,y:8:2); end. 例3.10 判断2006年,每个月份的天数。 【分析】 程序分为:输入月份,计算该月的天 数,输出天数。程序如下: Program ex3_10; Var month,days : integer; begin readln(month); case month of 1,3,5,7,8,10,12 : days : =31; 4,6,9,11 : days : =30; 2 : days : =28; else days : =0; end; if days0 then writeln(days); end. 运行结果: 输入:10 输出:31 例3.11 期未来临了,班长小Q决定将剩余班费X元钱,用于购买若干支钢笔奖励给一些学习好、表现好的同学。已知商店里有三种钢笔,它们的单价为6元、5元和4元。小Q想买尽量多的笔(鼓励尽量多的同学),同时他又不想有剩余钱。请您编一程
您可能关注的文档
- 2017高考理综答题技巧以及时间分配 (共30张).ppt
- 性能测试计划web.doc
- 2018届一轮复习人教版 近代中国经济结构变动和中国民族资本主义曲折发展 课件(42张).pptx
- 2018年高考一轮复习-经济生活-第六课-投资理财选择(上课用)-.ppt
- 2018年高考政治二轮专题复习名师课件:专题四 政治生活中行为主体.pptx
- 2017高考政治一轮复习第一单元生活与消费第三课多彩消费课件.ppt
- 2017高考生物复习专题9 生物变异、育种与进化.pptx
- 502082《c语言程序设计》课程标准(已审核).doc
- 2017高考政治一轮复习第一单元生活与消费第一课神奇货币课件.ppt
- 2017高考政治一轮复习第二单元文化传承与创新第四课文化继承性与文化发展课件.ppt
最近下载
- CFturbo中文教程[参考].pdf
- 新高考英语读后续写满分攻略:动作描写三大妙招(解析版).docx VIP
- 农业昆虫学:第七章 茶树害虫.ppt
- 新高考英语读后续写满分攻略:动作描写三大妙招(原卷版).docx VIP
- 新高考英语读后续写满分攻略:三大出彩收尾设计(解析版).docx VIP
- 2025年铜陵郊区陈瑶湖镇招聘乡村振兴专干和村级后备干部3人笔试模拟试题及答案解析.docx VIP
- 中级消防监控证考试题库免费.pdf
- 山东省临沂市沂水县七年级上期末数学试卷(含答案解析).pdf VIP
- 科主任年终工作总结.docx VIP
- 新高考英语读后续写满分攻略:读后续写 三大出彩收尾设计.pptx VIP
文档评论(0)