FAQ > 金融建模 > 建模问题 > 语法相关

Q:if…if…和if…else有什么区别?    

  • 判断语句的标准用法是if...else...
    if flag1 then
    begin
    exp1
    end
    else 
    begin
     exp2
    end
    判断语句表示如果满足条件flag1 则执行exp1,否则执行exp2。
    if flag1 then
    begin
     exp1
    end
    if flag2 then
    begin
     exp2
    end
    判断语句的执行过程是先判断条件flag1,满足条件,则执行exp1,之后再判断flag2,满足则执行exp2。如果不满足flag1,会计算判断flag2。不管满足flag1与否,都会执行第二个if。
    两个的区别在于,if...else...是属于一个完整的判断语句,而if...if...是两个判断语句。如果一个判断中有多种可能性,可以用
    if flag1 then
    exp1
    else if flag2 then
    exp2
    else if flag3 then
    exp3
    ...
    这种写法,与 if ... if...的差别在于,如果满足了flag1是不会再判断flag2、flag3了。这种写法,也可用case...of 条件语句进行代替。