[pascal入門]數組


一、本節目標

本節我們將要講述數組。本節目標:

  • 一維數組
  • 二維數組
  • 字符數組

二、一維數組

我們通過一個案例來簡單的理解數組。班主任要計算班級里面50個同學數學成績的平均成績,道理上講這是一個比較簡單的問題,只需要把每個人的成績加起來除以50就可以了。但是如何表示50個人的成績呢?按照我們之前的學習定義50個變量,s1,s2,s3...s50,但是你有沒有發現這樣存在的問題?第一,這是50個學生,假如是5000個呢?這樣定義很繁瑣。第二,這樣的定義沒有反應出他們之間內在的聯系,他們都是一個班級的,都是統計的數學成績,這樣的問題如何解決呢? 首先我們可以用同一個名字表示他們(如S),而在名字的右下角加一個數字來表示這是第幾名學生的成績,例如,可以用S1,S2,S3代表學生1、學生2、學生3......學生50等50個學生的成績。這個右下角的數字常稱為下標。一批具有相同名字和相同性質的數據就組成一個數組(array),就是數組名。我們首先從一維數組來理解和學習。

定義一維數組

定義一維數組一般有兩種方式:

方式1:

數組名:array[下標1..下標2] of 元素數據類型;

 

例如定義以下數組:

var student:array[1..10] of integer;

 

 

方式2:

第一步:先定義一個新的數據類型:

type 數據類型名=array[下標1..下標2] of 元素數據類型;

如:

type arr=array[1..10] of integer;

第二步:定義一個該數據類型的變量:

變量名:數據類型;

如:

var student:arr;
 
        

注意:

(1)數組名的命名規則和變量名相同,遵循標識符命名規則。

(2)在定義數組時,需要指定數組中元素的個數,方括號中的下標1表示數組中元素是從0開始的最后是以下標2結束的。例如,student[1..10],表示a數組有10個元素。注意,下標是從0開始的,這10個元素分別是student[0]...student[9]。一定要注意這里面不會有student[10].

(3)常量表達式中可以包括常量和符號變量,如“int a[4*2]”是合法的。但是不能包括變量,如下面的就是不合法的:

int n; scanf("%d",&n); int b[n]; 

經過上面的定義,在內存中划出一片存儲空間(空間大小:4*10=40字節),存放一個含有10個整形元素的數組。

Alt text

一維數組的初始化

為了讓程序簡潔,我們常常在定義數組的同時,給各數組元素賦值,這就是數組的初始化。 (1)在定義數組時對全部數組元素賦予初值。例如:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM