Pascal入门-.docVIP

  • 8
  • 0
  • 约1.34万字
  • 约 17页
  • 2017-08-22 发布于江苏
  • 举报
Pascal入门-

Pascal编程入门 第3章 循环结构程序设计 PAGE 40 PAGE 41 Pascal入门资料 (2)  HYPERLINK /yionline/articles/143546.html Pascal入门资料?(2) 例7?设计一个函数比较两个dates日期类型记录变量的迟早。   设函数名、形参及函数类型定义为:   AearlyB(A,B:dates):boolean;   函数的形参为两个dates类型的值参数。当函数值为true?时表示日期A早于日期B,否则日期A迟于日期B或等于日期B。显然不能对A、B两个记录变量直接进行比较,而要依具体的意义逐域处理。   源程序如下:   program?ex6_7;   type?dates=record       year:1900.1999;       month:1..12;       day:1..31      end;   var?x,y:dates;   function?AearlyB(A,B:dates):boolean;   var?earln:boolean;   begin    early:=false;    if?(A.yearB.year)?then?early:=true;    if?(A.year=B.year)and(A.monthB.month)    then?early:=true;    if?(A.year=B.year)and(A.month=B.month)and(A.dayB.day)    then?early:=true;    AearlyB:=early;    end;{of?AearlyB}   begin    write(Input?DATE?X(mm-dd-yy):)readln(X.month,X.day,X.year);    write(Input?DATE?Y(mm-dd-yy):)readln(Y.month,Y.day,Y.year);    if?AearlyB(X,Y)?then?writeln(Date?X?early!)?else?writeln(Date?X?not?   early!);   end. (三)开域语句   在程序中对记录进行处理时,经常要引用同一记录中不同的域,每次都按6.4.1节所述的格式引用,非常乏味。为此Pascal提供了一个with语句,可以提供引用域的简单形式。   开域语句一般形式:   with?记录变量名表?do   语句   功能:?在do后的语句中使用with后的记录的域时,?只要直接写出域名即可,即可以省略图10.2.2中的记录变量名和.。   说明:?①一般在with后只使用一个记录变量名。如:   write(Input?year:);   readln(x.year);   write(Input?month:);   readln(x.month);   write(Input?day:);   readln(x.day);   可以改写成:   with?x?do    begin     write(Input?year:);readln(year);     write(Input?month:);readln(month);     write(Input?day:);readln(day);    end;   ②设x,y是相同类型的记录变量,下列语句是非法的:     with?x,y?do...;   ③with后接若干个记录名时,应是嵌套的关系。如有记录说明:     var?x:record       i:integer;       y:record         j:0..5;         k:real;        end;       m:real      end;   可以使用:   with?x?do   begin     read(i);     with?y?do       read(j,k);     readln(m);   end;   或简写为:   with?x,y?do   readln(i,j,k,m); 例8?读入10个日期,再对每个日期输出第二天的日期。输入日期的格式是月、日、年,如9□30□1993,输出的格式为10/1/1993。   分析:?可用一个记录变量today表示日期。?知道一个日期后要更新为第二天的日期,应判断输入的日期是否为当月的最后一天,或当年的最后一天。   源程序如下:   program?ex6_8;    type?date=record         month:1..12;         day:1.

文档评论(0)

1亿VIP精品文档

相关文档