- 帕斯卡教程
- 帕斯卡 - 主页
- 帕斯卡 - 概述
- Pascal - 环境设置
- 帕斯卡 - 程序结构
- Pascal - 基本语法
- Pascal - 数据类型
- Pascal - 变量类型
- 帕斯卡 - 常数
- 帕斯卡 - 运算符
- 帕斯卡 - 决策
- 帕斯卡 - 循环
- 帕斯卡 - 函数
- 帕斯卡 - 程序
- Pascal - 变量作用域
- 帕斯卡 - 弦乐
- 帕斯卡 - 布尔
- 帕斯卡 - 数组
- 帕斯卡 - 指针
- 帕斯卡 - 记录
- 帕斯卡 - 变体
- 帕斯卡 - 集合
- 帕斯卡 - 文件处理
- 帕斯卡 - 记忆
- 帕斯卡 - 单位
- 帕斯卡 - 日期和时间
- 帕斯卡 - 对象
- 帕斯卡 - 类
- 帕斯卡有用资源
- 帕斯卡 - 快速指南
- 帕斯卡 - 有用的资源
- 帕斯卡 - 讨论
帕斯卡案例陈述
您已经观察到,if-then-else语句使我们能够在程序中实现多个决策。这也可以通过使用case语句以更简单的方式来实现。
句法
case 语句的语法是 -
case (expression) of L1 : S1; L2: S2; ... ... Ln: Sn; end;
其中,L1、L2 ... 是大小写标签或输入值,可以是整数、字符、布尔值或枚举数据项。S1、S2 ……是 Pascal 语句,这些语句中的每一个都可能有一个或多个与其关联的 case 标签。该表达式称为case 选择器或case 索引。案例索引可以采用与案例标签相对应的值。
case 语句必须始终有一个与之关联的结束语句。
以下规则适用于案例陈述 -
case 语句中使用的表达式必须具有整型或枚举类型,或者属于类类型,其中该类具有到整型或枚举类型的单个转换函数。
一个案例中可以有任意数量的案例陈述。每个案例后面都跟有要比较的值和冒号。
case 的 case 标签必须与 case 语句中的表达式具有相同的数据类型,并且必须是常量或文字。
编译器将计算 case 表达式。如果 case 标签的值之一与表达式的值匹配,则执行该标签后面的语句。之后,节目在最终结束后继续进行。
如果没有一个 case 标签与表达式值匹配,则执行 else 或 other 关键字后面的语句列表。这可以是一个空的语句列表。如果不存在 else 部分并且没有 case 常量与表达式值匹配,则程序流程在最终结束后继续。
case 语句可以是复合语句(即Begin ... End 块)。
流程图
例子
下面的例子说明了这个概念 -
program checkCase; var grade: char; begin grade := 'A'; case (grade) of 'A' : writeln('Excellent!' ); 'B', 'C': writeln('Well done' ); 'D' : writeln('You passed' ); 'F' : writeln('Better try again' ); end; writeln('Your grade is ', grade ); end.
当上面的代码被编译并执行时,它会产生以下结果 -
Excellent! Your grade is A
pascal_decision_making.htm