首页
/
每日頭條
/
科技
/
判斷數組的數據類型
判斷數組的數據類型
更新时间:2026-11-13 13:45:47

判斷數組的數據類型?數組類型是具有相同類型的元素按一定的順序組成的序列數組中數據元素被順序安排在内存中一段連續的區域,可以通過數組名來訪問在Object Pascal中數組分為靜态數組和動态數組,我來為大家講解一下關于判斷數組的數據類型?跟着小編一起來看一看吧!

判斷數組的數據類型(5.高級數據類型)1

判斷數組的數據類型

5.靜态數組

數組類型是具有相同類型的元素按一定的順序組成的序列。數組中數據元素被順序安排在内存中一段連續的區域,可以通過數組名來訪問。在Object Pascal中數組分為靜态數組和動态數組。

靜态數組在程序初始化時必須分配内存單元,明确數組的大小和元素的數據類型。而動态數組在定義和聲明時隻指定數組的類型,而不指定數組的大小,在程序運行時動态地開辟内存空間。

本節我們介紹靜态數組的使用。

5.1一維數組的定義

數組通常分為一維、二維和多維數組。一維數組的定義格式:

type <數組類型名> = array[<下标類型>] of <基類型>;

如:

type One2TenArray = array[1..10] of Integer;

上面的語句定義了One2TenArray數組類型,其元素下标從1到10,每個元素的類型為整型。

在Object Pascal中:

  • 下标類型允許為整數類型、字符類型、布爾類型、子界類型、枚舉類型。元素的類型可以為任意數據類型。

  • 在同一個數組中,所有元素類型必須相同

  • 如果使用自定義數據類型作為下标類型,在使用前必須聲明

    舉例如下:

    type Color = (red, green, blue, yellow, black, white); Ten = 0..10; ColorArray = array[Color] of integer; TenArray = array[Ten] of Color;

    5.2一維數組變量的聲明

    數組變量的聲明與其他變量的聲明相同,如:

    var a1, a2: ColorArray; c1, c2: TenArray;

    也可以直接聲明,如:

    var a1, a2: array[0..10] of Real; sa: array[Boolean] of String;

    5.3數組元素的訪問

    使用數組名加方括号,方括号中是數組元素的下标值來訪問。如:

    a1[3] sa[True]

    在Object Pascal中:

  • 下标值必須符合數組類型在下标類型的定義,其類型必須與下标類型一緻,其值在下标取值範圍内

  • 下标也可以是表達式

    5.4标準數組函數

    在Object Pascal中,标準函數Low和High,可以返回數組的最小下标值和最大下标值;Length函數可以返回數組的長度。

    一維數組的應用示例:産生10個随機數,計算10個随機數的最大值、最小值、和、平均數。界面如下圖:

    代碼如下:

    procedure TForm1.Button1Click(Sender: TObject); var a: array[1..10] of integer; i, sum, max, min: integer; mean: Real; begin // 計算按鈕單擊事件 for i := 1 to 10 do begin randomize; a[i] := random(i * 100); Memo1.Lines.Add(IntToStr(a[i])) end; sum := 0; max := a[1]; min := a[1]; for i := 1 to 10 do begin sum := sum a[i]; if a[i] > max then max := a[i]; if a[i] < min then min := a[i]; end; mean := sum / Length(a); Edit1.Text := IntToStr(sum); Edit2.Text := FloatToStr(mean); Edit3.Text := IntToStr(max); Edit4.Text := IntToStr(min); end; procedure TForm1.Button2Click(Sender: TObject); begin // 清除按鈕單擊事件 Memo1.Lines.Clear; Edit1.Text := ''; Edit2.Text := ''; Edit3.Text := ''; Edit4.Text := ''; end;

    5.5二維靜态數組

    二維靜态數組是指一個數組中的元素又是一個一維數組,定義格式:

    type <數組類型名> = array[<下标類型1>] of array[<下标類型2>] of <基類型>;

    也可以采用如下格式:

    type <數組類型名> = array[<下标類型1, 下标類型2>] of <基類型>;

    如:

    type TIArr = array[1..10] of array[1..10] of integer; TDoubleArr = array[1..10, 1..10] of Real; var i1: TIarr; d1: TDoubleArr; m1: array [1..5,1..10] of real;

    示例:輸出九九乘法表,界面如下圖:

    代碼如下:

    procedure TForm1.Button1Click(Sender: TObject); const SPACE8 = ' '; SPACE10 = ' '; var a: array [1..9] of array [1..9] of integer; i, j: integer; s: string; begin for i := 1 to 9 do for j := 1 to 9 do a[i,j] := 0; for i := 1 to 9 do for j := 1 to i do a[i,j] := i * j; s := SPACE10; for i := 1 to 9 do s := s inttostr(i) SPACE10; Memo1.Lines.Add(s); s := ''; for i := 1 to 9 do begin s := s inttostr(i) SPACE8; for j := 1 to i do begin if a[i,j] = 0 then continue; if a[i,j] < 10 then s := s ' ' inttostr(a[i,j]) SPACE8 else s := s inttostr(a[i,j]) SPACE8; end; Memo1.Lines.Add(s); s := ''; end; end;

    5.6多維靜态數組

    多維靜态數組的一般定義格式:

    type <數組類型名> = array[<下标類型1, 下标類型2, ..., 下标類型n>] of <基類型>;

    如:

    type TW3 = array of [1..10, 1..10, 1..10] of integer; var a: TW3

  • Comments
    Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
    Sign up to post
    Sort by
    Show More Comments
    推荐阅读
    微信群相冊怎麼設置
    微信群相冊怎麼設置
    1、首先打開微信,然後在頂部搜索框中搜索關鍵詞群相冊”,然後點擊進入群相冊服務”小程序,就可以找到這個有騰訊官方開發的微信群相冊功能了。2、如果要創建群相冊,首先點擊「創建群相冊」,然後邀請微信群好友加入群相冊。3、邀請好友加入創建的微相冊的微信群之後,就可以上傳照片了。上傳照片很簡單,點擊主頁下方的「發布照片」,然後從相冊中選擇需要備份上傳的照片,上傳到群相冊中就可以了,每次最多可以上傳9張,沒
    2026-11-13
    vivo多屏互動怎麼連接電視
    vivo多屏互動怎麼連接電視
    1、點擊【設置】;2、下拉頁面,找到【多屏互動】選項并點開;3、開啟後手機會自動搜索支持WLANDisplay功能的設備。如果顯示設備不支持WLANDisplay,則需要借助一個Xshare來實現該功能。4、通過多屏互動”功能,可以将手機屏幕傳到其它顯示設備(如:電視、投影儀)上。通過WLAN網絡即可将手機連接到支持WLANDisplay功能的顯示設備上。如果您的顯示設備不支持WLANDispla
    2026-11-13
    路由器穿牆效果不好怎麼辦
    路由器穿牆效果不好怎麼辦
    1、将空易拉罐,洗淨,拔出拉環。2、沿着罐底進行環切,将整個底部移除。3、沿着罐頂進行環切注意不要全切,留下一部分不切,同時這部分必須靠近罐口)。4、在所留部分的反面垂直畫一條線,沿線剪開鐵皮。5、展開鐵皮,使鋁罐保留部分依附在底座上,将天線穿過罐口,用玻璃膠固定罐底,完成。
    2026-11-13
    别克原廠導航是什麼牌子
    别克原廠導航是什麼牌子
    1、安吉星。2、英朗原裝的導航是安吉星,那種大顯示屏的導航是加裝附件,一般都是凱立德,道道通,開機畫面上會都會顯示品牌的。3、原車裝配的導航是選擇生廠商為通用代産的,但有部分4S店使用的是飛歌的。别克英朗安裝導航可以選擇一體式的,并配有和原車适配的接口,安裝十分便利,并且可以集導航,倒車影像,行車記錄儀與一體的,更加簡便而又美觀,又便于使用。
    2026-11-13
    .bak是什麼文件
    .bak是什麼文件
    演示機型:華為MateBookX系統版本:win10.bak是備份文件,為文件格式擴展名,這類文件一般在.bak前面加上原來的擴展名,比如windows.dll.bak,或是windows_dll.bak,有的則是由原文件的後綴名和bak混合而成,如proteus的備份文件為.DBK。電腦使用小技巧:1、顯示記事本時間:打開記事本程序後輸入。LOG,記錄工作事項。關閉保存後,程序自動記錄修改的時間
    2026-11-13
    Copyright 2023-2026 - www.tftnews.com All Rights Reserved