- 1、本文档共3页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
pascal IF嵌套和Case语句
第六讲 IF嵌套和Case语句
一、IF语句的嵌套 在if语句中,如果then子句或else子句仍是一个if语句, 则称为if语句的嵌套。 例1 计算下列函数 分析:根据输入的x值,先分成x100与x=100两种情况,然后对于情况x=100,再区分x是否小于200。
解法一:使用if嵌套语句
program ex; var x:real;自变量 y:real;因变量 begin wrtie(Input x:);readln(x); if (x100) then y:=x+1
else if x200 then y:=x-1 else y:=-1; writeln(x=,x,y=,y); end.
显然,以上的程序中,在else子句中嵌套了一个Ⅱ型if语句。当然程序也可以写成如下形式: 解法二:CASE语句
program ex;
var x,y:real;
s:integer;信号灯
begin
write(‘input x:’);
readln(x)
s:=trunc(x/100);
case s of
0:y:=x+1;
1:y:=x-1;
Else y:=0;
End;//case end
Writeln(‘x=’,x);
Writeln(‘y=’,y);
End.
二、case语句 上面我们知道可以用嵌套的if语句实现多分支的选择结构。但是如果分支越来越多时,用嵌套的if语句实现多分支就显得繁杂。当多分支选择的各个条件由同一个表达式的不同结果值决定时,可以用case语句实现。它的选择过程,很象一个多路开关,即由case语句的选择表达式的值,决定切换至哪一语句去工作。因此在分支结构程序设计中,它是一种强有力的手段。在实现多路径分支控制时,用case对某些问题的处理和设计,比用if语句写程序具有更简洁、清晰之感。 (一)、情况语句的一般形式:
case 表达式 of 情况标号表1:语句1 ; 情况标号表2:语句2 ; : 情况标号表n:语句n ; end; 其中case、of、end是Pascal的保留字, 表达式的值必须是顺序类型,它可以是整型、布尔型及以后学习的字符型、枚举型和子界型。情况标号表是一串用逗号隔开的与表达式类型一致的常量序列。语句可以是任何语句,包括复合语句和空语句。 (二)、case语句的执行过程 先计算表达式(称为情况表达式)的值,如果它的值等于某一个常量(称为情况常量,也称情况标号),则执行该情况常量后面的语句,在执行完语句后,跳到case语句的末尾end处。
练习题:.输入两个正整数a,b。b最大不超过三位数,a不大于31。使a在左,b在右,拼接成一个新的数c。例如:a=2,b=16,则c=216;若a=18,b=476,则c=18476。 提示:求c的公式为: c=a×K+b 其中:
S:
Case s of;
0:k=10
1:k=100
Trunc()是取整函数
比如说
trunc(2.5)=2
trunc(3.9)=3
trunc(9)=9
而实型就是所有实数,包括无理数(如根号2)、整数、小数等等
整型是只有整数的
所以trunc函数对实型有用
文档评论(0)