- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
信息学奥赛--程序的三种基本结构
三、case 语句:分情况语句(多分支语句) 格式:case 表达式 of 常数表1:语句1; 常数表2:语句2; ···· 常数表n:语句n; else 语句n+1 end; 功能:执行过程 说明:1)end 与case 对应 2)表达式的类型通常是整型、字符型 3)常量表是常量,其类型与表达式的类型要一致。常量表中的常量不能重复。 输入两个数(均不为零)及一个算术运算符,输出其运算的结果 程序代码: program ex3(input,output); var x,y,s:real; ch:char; begin writeln(‘input x y ch:’); readln(x,y); readln(ch); case ch of ‘+’:s:=x+y; ‘-‘:s:=x-y; ‘*’:s:=x*y; ‘/’:s:=x/y end; writeln(x,ch,y,’=’,s) end. 例3、输出1~100之间的奇数。 程序代码: program ex5(input,output); var x:integer; begin x:=1; while x100 do begin write(x:5); x:=x+2 end end. 三) repeat语句:(“直到型循环”) repeat语句:(“直到型循环”):反复执行循环体直到条件满足为止。 格式:repeat 语句1; 语句2; 语句3; ··· 语句n until 布尔表达式; 功能:执行过程:先执行指定的语句序列,然后判别表达式。 说明:while语句和repeat语句都可以实现循环结构,但它们有四点不同: 【例6】:输入若干个字符,它的终止符是‘#’,计算输入的字符中‘a’(‘A’)出现的次数。 算法分析: 设计数器i,置初值为0; 出入字符; 当字符不为‘#’时循环:如果字符为‘a’或‘A’,则计数器加1;读入下一个字符; 输出计数器的值,程序结束。 While循环 Repeat循环 程序代码: program ex6; var ch:char; i:integer; begin i:=0; read(ch); while ch’#’ do begin if (ch=’a’) or (ch=’A’) then i:=i+1; read(ch) end; writeln(‘i=’,i) end. 本讲结束! 谢谢! 引例: 求恰好使s=1+1/2+1/3+…+1/n的值大于10时n的值。 var s : real; n : integer;{n分母} begin s:=0; n:=0; while s=10 do{当s的值还未超过10时} begin n:=n+1;{分母1} s:=s+1/n;{将下一项值累加到s} end; writeln(n);{输出结果} end. while循环 当循环次数不能预先确定时,只能根据某一条件来决定是否进行循环时,用while 语句实现。 格式: while 布尔表达式 do 一条语句:循环体; 或: while 布尔表达式 do begin 语句组:循环体 end; 其意义为: 当布尔表达式的值为true时,执行do后面的语句。 循环体中必须有改变循环控制变量的语句,否则出现死循环。区别于for结构 例1: 求两个数a,b(1000)的最小公倍数。 样例: 输入: 30 输出: 60 var a,b:integer; s:longint; begin readln(a,b); s:=a; while s mod b0 do s:=s+a; writeln(s); end. 最大公约数 最小公倍数 例2、输入n(1015),求他的各位数字之和. 如
您可能关注的文档
- 从理论逻辑到操作方法——股票估值.ppt
- 从金龙鱼渠道变革看区域建设、网络升级.ppt
- 任子行:公司章程(2019年8月).ppt
- 企业人力资源管理人员人力资源管理师培训(ppt62)-管理培训.ppt
- 企业人基本职场礼仪.ppt
- 企业外部培训资料--若何设计年度培训计划与预算计划.ppt
- 企业安全文化PPT.ppt
- 企业安全文化63.ppt
- 企业安全文化与应急救援(湖南交通0911)ppt【企业文化经典】.ppt
- 企业安全生产教育培训工作【精选-PPT】.ppt
- 资深总监面试题(某大型集团公司)题库解析.docx
- 2025年衡水中学面试题库答案.doc
- 2025年广安小学老师面试题库及答案.doc
- 2025年定海教师招聘面试题库及答案.doc
- 2025年夏季外语口语面试题库及答案.doc
- 跨学科实践活动5 基于碳中和理念设计低碳行动方案(同步讲义)初中化学人教版(2024)九年级上册 第六单元 碳和碳的氧化物(解析版).docx
- 虚拟电厂在能源优化管理中的潜力研究.docx
- 2025年工行结构化面试题库及答案.doc
- 跨学科实践活动5 基于碳中和理念设计低碳行动方案(同步讲义)初中化学人教版(2024)九年级上册 第六单元 碳和碳的氧化物(原卷版).docx
- 田忌赛马笔记课件.pptx
原创力文档


文档评论(0)