程序流程的控制之条件分支(Delphi)

几乎所有的语言都包含三种程序流程控制方法:

  • 顺序,按照程序语句的顺序执行。
  • 条件分支,根据不同的条件执行不同的语句。
  • 循环,由特定条件决定某些语句重复执行的次数。
  • 跳转

下面我们先来看看条件分支结构(if和case)

条件分支

if语句主要来检测一个条件,并根据这个条件是True或者False来执行一段代码;

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var
   I: Integer ;
   FileGood: Boolean ;
begin
   FileGood := True ;
   if  FileGood then      { 简洁的写法,判断FileGood是否为True}
     ShowMessage( 'True' );
   { 上面的写法等同于下面}
   if  FileGood = True  then  ShowMessage( 'True' );
 
   if  I > 0  then        { 如果I大于0}
     DoSomething1
   else  if  I < 0  then   { 如果I小于0,else if块不是必须的}
     DoSomething2
   else                 { 如果是其他条件,通常来实现默认的处理,else块也不是必须的}
     DoSomething;
end ;

注意:使用if分支语句时else(包括else if)关键字之前的语句都不能包含“;”,因为整个if …then…else段被看成是一整条语句。

case语句可以看成是if语句的发展,它可以根据一个表达式的结果使程序执行多个代码块中的某一个代码块,此表达式的类型只能是有序类型变量作为条件因子,其他的如字符串则是行不通的。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
var
   I: Integer ;
begin
   case  I of
     1 :      { 如果 I = 1}
       DoSomething1;
     2 , 3 :   { 如果 I = 2或者3,相当于if I in [2, 3]}
       DoSomething2;
     4..10 { 如果 I在4到10范围内(含4和10)}
       DoSomething3;
   else       { 如果是其他条件,通常用来实现默认处理,else块也不是必须的}
     DoSomething;
   end ;
end ;

Q:什么是有序类型(Ordinal)?

A:有序,是说变量的取值是有序的,那么对于这样的变量,我们可以称为有序变量。有序变量取值必须落在既定的范围内,不能越界;如果强行越界,将会得到错误的运算结果。有序类型包括以下几种类型:

Integer、Cardinal、Shortint、Smallint、Longint、Int64、Byte、Word、Longword(DWORD)、Character(Char)、Boolean、Enumerated(枚举类型)和Subrange(子界类型)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值