pascal 数组

一组数应该如何定义

一、数组的定义 数组是程序中经常使用的结构数据类型,用来描述由固定数目的同一类型的元素组成的数据结构。数组的每个元素与下标相关联,根据下标指示数组的元素。数组的存贮方式为按行存贮,在编译阶段,计算机根据数组的类型说明,确定其存贮空间的大小。 数组的定义形式: array [<下标类型1>,……<下标类型n>] of <元素类型> 其中n称为数组的维数,每维的下标类型必须是一个序数类型,通常为子界类型或枚举类型,其作用是指定数组下标的编制方式和下标取值范围。数组的元素类型是除文件类型和指针类型(下面将介绍)以外的一切类型。例如:
type
color=(red,yellow,blue);
sample1=array [1..10] of integer; {类型sample1的元素是整数,有10个元素,
维数为1,依次按1..10编下标}
sample2=array [1..5,1..5] of real;{类型sample2的元素是实数,有25个元素,
维数为2,依次按[1,1],…,[1,5],[2,1],
…,[2,5],…,[5,1],…,[5,5]编下标}
sample3=array [color] of color;{类型sample3的元素属color类型,有3个元
素,一维,依次按red,yellow,blue编下标}
var
a:sample1;
b,c:sample2;
d,e:sample3;
注意,类型和变量是二个不同的概念,不能混淆。程序中使用的是数组变量而不是数组类型,即a,b,c,d,e。但数组的类型定义和变量定义可以合并在一起。例如:
var
a:array [1..10] of integer;
b:array [1..5,1..5] of integer;
d:array [red,yellow,blue] of (red,yellow,blue);
二、数组的操作
当数组的元素类型为简单类型时,其下标变量与简单类型变量一样使用。例如:
a[5]:=50; a[20]:=a[5];
由于下标变量的下标可以作为表达式,使得数组有广泛的应用。例如,设有如下变量说明
var
i,sum:integer;
下面的语句可求数组变量a的元素和
sum:=0;
for i:=1 to 10 do sum:=a[i]+sum;
PASCAL允许用同一数组类型的变量相互赋值。如d:=e也是合理的,它把数组变量e 的所有元素依次赋给数组变量d,即等价于下面说明
begin
d[red]:=e[red];
d[yellow]:=e[yellow];
d[blue]:=e[blue];
一个数组常量可以通过常量说明语句来定义。
若是一维数组常量,其定义形式如下:
const
数组常量名:array [下标变量] of 元素类型=(元素值1,元素值2,…,元素值n);

等号右方用括号括起来的部分,是指定数组各元素的值,它们彼此间用逗号隔开。例如:
const digits:array [0..9] of char=('0','1','2','3','4','5','6',
'7','8','9');
若是二维数组常量,则括号中的每一个常量元素可以看作是行的所有列元素,列元素间用逗号分隔。这些常量元素用括号括起来,彼此间也用逗号隔开。例如
move=array [1..4,1..4] of integer=((1,2,3,4),
(5,6,7,8),
(9,10,11,12),
(13,14,15,16));
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-12-22
方法1
var n(你定的数组名):array[1..100](切记是中括号,里面是你想定的下表数量)of longint(数组的类型);

例如:tot:array[1..10000]of char;
(数组里面可以存10000个东西,如果多于10000会出界,也就是201错误);
也可以
2
type n(你定义的类型):array[1..1000]of longint'
var a(你想定的数组名):n;
通常用前者;
后者比较麻烦,写了这么多,可以给我分了吗??
第2个回答  2009-12-26
var 数组名:array[数组下标..数组上标] of 数组基类型
第3个回答  2010-01-03
一维数组的定义:
var
a:array [1..10] of integer;
其中:a是这一批数据的名称,称为数组名;array、of是定义数组的保留字;中括号中的数字是数据编号的下限和上限,财时也说明了数据的个数(上限-下限);最后一个是数据的基类型,如integer,char,real,boolean。
二维数组的定义:
var
a:array[1..10,1..5] of integer;
其中:a是数组名,由程序员自定;array和of是定义数组的保留字;(这两点和一维数组定义的格式一样)中括号中的两个范围表示二维数组共有多少行、多少列(第一个范围表示行数,第二个范围表示列数);最后一个表示数组元素的类型,规定和一维数组一样。如上例,定义了一个二维数组a,共有10行5列。
相似回答