【Delphi 基础知识 7】条件选择语句

目录

  • if...then...else 语句
  • case 语句
  • goto 语句

在Delphi中,常见的选择语句包括 if…then…else 和 case 语句。下面是这两种语句的代码示例:

if…then…else 语句

var
  x: Integer;

// 示例1: 简单的 if 语句
if x > 0 then
  ShowMessage('x 是正数')
else
  ShowMessage('x 不是正数');

// 示例2: if...then...else 多分支
if x > 0 then
  ShowMessage('x 是正数')
else if x < 0 then
  ShowMessage('x 是负数')
else
  ShowMessage('x 是零');

case 语句

var
  dayOfWeek: Integer;

// 示例1: 简单的 case 语句
case dayOfWeek of
  1: ShowMessage('星期一');
  2: ShowMessage('星期二');
  3: ShowMessage('星期三');
  4: ShowMessage('星期四');
  5: ShowMessage('星期五');
  6, 7: ShowMessage('周末');
else
  ShowMessage('无效的星期值');
end;

// 示例2: case 语句使用范围
case dayOfWeek of
  1..5: ShowMessage('工作日');
  6, 7: ShowMessage('周末');
else
  ShowMessage('无效的星期值');
end;

goto 语句

goto 语句在 Delphi 中是支持的,但是在良好的编程实践中,通常应该避免过度使用 goto,因为它可能导致代码结构混乱、难以维护,并增加出错的可能性。然而,在某些情况下,使用 goto 语句可能是一种简单有效的方式。

以下是一个简单的 Delphi 示例,演示了 goto 的使用:

program GotoExample;

var
  userInput: Char;

begin
  writeln('请输入 Y 或 N:');
  readln(userInput);

  // 使用 goto 进行条件跳转
  if (userInput <> 'Y') and (userInput <> 'N') then
    goto InvalidInput;

  if userInput = 'Y' then
    writeln('用户选择了 Yes')
  else
    writeln('用户选择了 No');

  // 跳过无效输入的处理
  goto EndProgram;

  // 处理无效输入的标签
  InvalidInput:
    writeln('无效的输入,请输入 Y 或 N');

  // 结束程序的标签
  EndProgram:
    writeln('程序结束');

  readln;
end.

上述示例中,goto 语句被用于跳转到处理无效输入的标签(InvalidInput)以及结束程序的标签(EndProgram)。请注意,goto 的使用应该小心谨慎,确保它不会引入代码逻辑上的混乱和错误。在大多数情况下,可以使用更结构化的控制流程来代替 goto

你可能感兴趣的:(100天精通Delphi,基础知识)