第五章 Pascal的自定义数据类型
Pascal系统允许用户自定义的数据类型有:数组类型、子界类型、枚举类型、集合类型、记录类型、文件类型、指针类型。
第一节数组与子界类型
[]总务室在商店购买了八种文具用品,其数量及单价如下表:
序号
1
2
3
4
5
6
7
8
品名
圆珠笔
铅笔
笔记本
订书机
计算器
三角板
圆规
文件夹
件数
24
110
60
16
26
32
32
42
单价
编程计算各物品计价及总计价。
解:表中有两组数据,设表示物品件数的一组为a,表示物品单价的一组为b。
a,b两组数据以序号为关联,具有相应的顺序关系。按如下方法处理:
①定义s,a,b三个数组,按相应顺序关系,给a,b赋值(件数和对应单价) ;
②每读入一对数据(件数和对应单价),以同一序号的件数和对应单价计算出同一物品的计价:
s[ i ]=a[ i ]* b[ i ] ; { 用s[ i] 记入第i种物品的计价}
t = t + s[ i ] { 用简单变量累加总计价}
③循环做步骤②,做完后输出s数组所记入的各物品计价及总计价t。
Pascal程序:
Program Exam51;
Var a: array[1..8] of integer; {a数组为整数型}
s,b: array[1..8] of real; {s和b数组为实数型}
t: real;
i: integer;
Begin
t:=0;
for i:=1 to 8 do {输入并计算八种物品}
begin
write('a[', i, ']=') ;
Readln(a[ i ]) ; {输入单价}
write('b[', i, ']=') ;
readln(b[ i ]); {输入件数}
s[ i ]:=a[ i ]* b[ i ]; t:=t+s[ i ]
end;
write('i':2, ' ':2);
for i:=1 to 8 do {打印物品序号}
write(i:8); {输出项宽度为8}
writeln;
write('a':2, ' ':2); {输出项宽度为2}
for i:=1 to 8 do {打印物品件数a数组}
write(a[ i ]:8); {输出项宽度为8}
writeln; {换行}
write('b':2, ' ':2);
for i:=1 to 8 do {打印物品件数b数组}
write(b[ i ]:8:2); {输出项宽度为8,小数2位}
writeln; {换行}
write('s':2, ' ':2);
for i:=1 to 8 do {打印物品计价s数组}
write(s[ i ]:8:2); {输出项宽度为8,小数2位}
writeln; {换行}
writeln('Totol=', t:8:2);
Pascal的自定义数据类型 来自淘豆网www.taodocs.com转载请标明出处.