多分支语句

  IF语句只能使程序有两个分支,当遇到需要有两个以上分支时, IF语句就很不适用了,这时我们可以用 CASE语句,它能使程序有很多个分支。其效果如下图:

CASE 表达式 OF
常量1:语句序列1;
常量2:语句序列2;
……
常量N:语句序列N;
else 语句序列N+1;
END;
其中语句序列如果只有一句,可直接写在常量后的冒号后;如果语句序列有很多句,则应该用 BEGIN…… END加以框住。

CASE语句的作用是,根据表达式,表达式可以有多个值,分别对应于常量 1、 2等值时,就运行该常量后所对应的语句。

例:输入 1到 7之间的某个整数,打印出其对应的星期的英语名: [例 4、 4]:

program q44;
var n:integer;
begin
write(‘n=’);
readln(n);
case n of
1:writeln(‘Monday’);
2:writeln(‘Tuesday’);
3:writeln(‘Wednseday’);
4:writeln(‘Thursday’);
5:writeln(‘Friday’);
6:writeln(‘Saturday’);
7:writeln(‘Sunday’);
else writeln(‘WORNG!’);
end;
end.

例:输入一个学生的数值化成绩,把它转化为等级化成绩。即 100-90是 A, 89-80是 B, 79-70是 C, 69-60是 D, 59-0是 E。

Program q44;
            Var s:integer;
            G:char;
            Begin
            Write(‘Input the score:’);
            Readln(s);
            Case s div 10 of
            10,9:g:=’A’;
            8:g:=’B’;
            7:g:=’C’;
            6:g:=’D’;
            else g:=’E’;
            end;
            writeln(s,’   ‘,g);
            end.
            

 

 

用 S DIV 10这个表达式作条件;
当 S DIV 10等于 10或 9时,表示 S是 90至于 100之间的值

 

posted on 2008-10-31 19:35  sandboy  阅读(1422)  评论(0)    收藏  举报