计算机二级DELPHI基础:程序结构与流程控制语句计算机二级考试
文章作者 100test 发表时间 2009:04:09 22:58:01
来源 100Test.Com百考试题网
选择语句与分支程序
选择语句也称为条件语句,条件语句有if与case两种语句,主要用于实现分支结构。
1.if语句
if语
(1)
(2)
句主要实现了判断的功能,语法格式如下:
if <.条件表达式>.then<.语句>.;
if <.条件表达式>.then<.语句1>.
else<.语句2>.;
(3)if语句可以嵌套,形成多重选择结构,形式如下:
if<.条件表达式1>.then<.语句1>.
else if<.条件表达式2>.then<.语句2>.
else if<.条件表达式3>.then<.语句3>.
例2.2 建立分支结构的程序,分析执行结果
序步骤如下。
①创建目录以下
E:\delphi\program\example2—2。
②执行菜单File I New打开New Items对话框,选解嵌套形式的条件语句的含义。建立程中New标签中的Console Application项,按下OK按钮。
③通过菜单File l Save All将工程文件保存在目录E:\delphi\program\exampl比一2中。保存时只保存工程文件,名称④修改文件为Project2—2。
Project2—2.
program Project2—2;
dpr中的程序清单如下:
{$APPTYPE CONSOLE}
Var
money:t~urrency:
/^’
begin
writeln(’请输入你的钱数:’);
readln(money);
‘f money>.=3000 theit mone 000 then
>.=
writeln(’买个随身听’)
else if money>.=2000 then
writeln(’买个游艺机’)
else if money>.=1 000 then
writeln(’买本书’)
else writeln(’存钱吧!’)
readln;
//writeln()函数在屏幕上显示文本
//readln()函数从键盘输入数字
end.
⑤编译、链接和运行程序,执行Run I Run菜单命令,测试效果
注意:在if语句的第(2)种情况下,“语句1\"的最后不需
要分号“;\"。“语句1\"和“语句2\"
可以是复合语句,如果“语句1\"是一个复合语句,则该复合语句的end后面也不需要分号。因为
分号表示if语句结束,因此else前没有分号,否则系
到与之匹配的if语句,从而产生语法错误
2.case
语句
统认为if语句已经结束,再看到else则找不
case语句对一个结果的多种情况进行判断,语法格式如下:
Case<.
[else
end;
表达式>.of
<.常量1>.:<.语句1>.;
<.常量2>.:<.语句2>.;
<.常量n>.:<.语句n
<.语句n 1>.;]
其中“表达式\"的值必须是有序类型,常量的类型必须与表达式的类型一致。如果表达式的数值等于“常量1”,则执行“语句1\",执行完毕后就退出case语句。如果表达式的数值不等于<.常量1>.,则依次向下判断。如果所有罗列出来的数值都不满足,就执行else语句后面的语句。
例 用case语句
根据输入的年份(year)和月份
(month),
程序的步骤同前面的例题,工程文件project2—3放在文件夹E:
程序代码如下:
program Project2—3;
{$APPTYPE CONSOLE}
{$R木.res}
var year,month,days:Integer;
begin
writeln(’请输入年份:’);
readln(year);
days:=0;
for month:=1 to 1 2 do
1 0
begin
case month of
决定该月的天数(days)。建立\delphi\program\example23中。
1,3,5,7,8,1 0,1 2:days:=3 1;
2:if(year mod 400=O)or not(year mod 1 00=O)and(year mod 4=0) ,
then days:=29
else days:=28; 4,6,9,1 1:days:=30;
else writeln(’月份出错!’);
end;
’writeln(mOBth,’月’,days,’天’);
end;
writeln(’按回车结束’);
readln;
end.
运行程序,输入一个表示年份的整数,屏幕上将显示该年每月的天数。
注意:case语句中,常量出现的先后顺序不受限制。但常量值不能重复,否则会出现语法错误。