第八章陣列課程筆記

2021-09-05 08:54:28 字數 2412 閱讀 7628

第八章陣列課程筆記

本章主要內容包括一維陣列、二維陣列、簡單的排序和查詢演算法、字串陣列。

一維陣列(陣列)

陣列是一組具有相同型別的變數的集合。

一維陣列定義格式

型別 陣列名[元素個數]

假設定義一陣列 int a[10] 則a就為陣列名,10表示有十個資料,但陣列下標是從 0 到 9 ,且資料都為整數。

注意(1)c語言中陣列的下標都是從0開始的。

(2)定義陣列時不能使用變數定義陣列的大小。列如 int a[n] 則n必須是確定的數。

(3)一般定義陣列是都要比要求的大一部分,這樣可以防止陣列資料溢位。

(4)因為同一陣列在程式中會出現多次,當修改元素個數時,會很麻煩。所以我們可以把維數定義為巨集常量。這樣修改時會很方便。

列如 #define n 100;

int a[n];

一維陣列的例子

oj中陣列06陣列逆序重放

#include

using namespace std;

int main()

}for(c=1;c<=m;c++)

}e=0;

for(f=1;f<=m;f++)

}cout《排序和查詢

排序主要有選擇排序、氣泡排序、插入排序以及sort排序。

選擇排序

#include

using namespace std;

int main()

if(k!=j)

swap(a[k],a[j]);

}for(int j=1;j<=i;j++)

cout《氣泡排序

#include

using namespace std;

int main()

for(int j=1;j<=i-1;j++)

for(int i=2;i<=n;i++)

if(l!=i)

}for(int c=1;c<=n;c++)

sort(a,a+n);

for(int c=0;c字元陣列

字元陣列是指元素為字元的陣列。字元陣列是用來存放字串行或字串的。

普通陣列的基本規則也適用於字元陣列,字元陣列也分一維、二維、三維。

1一般定義格式

char x[n];

於一般陣列,所不同的是陣列型別是字元型,第乙個元素同樣是從ch1[0]開始,而不是ch1[1]。

2 字元陣列的賦值

(1)用字元初始化陣列

例如 char chr[4]=

字元陣列中也可以存放若干個字元,也可以來存放字串。兩者的區別是字串有一結束符\0。即在一維字元陣列中存放著帶有結束符的若干個字元稱為字串。

注字串是一維陣列,但是一維字元陣列不等於字串。

例char chr[5]=;即在陣列chr2中存放著乙個 字串"abcd" 。

(2).用字串初始化陣列

用乙個字串初始化乙個一維字元陣列,可以寫成下列形式 char chr[5]=「abcd」

對二維字元陣列來講,可存放若干個字串。可使用由若干個字串組成的初始值表給二維字元陣列初始化。

例如: char chr[3][4]=在陣列chr中存放3 個字串,每個字串的長度不得大於3。

(3)陣列元素賦值

字元陣列的賦值是給該字元陣列的各個元素賦乙個字元值。

例如:char chr[3];

char[0]=『a』 ;chr[1]=『b』;chr [2]=『c』;

對二維、三維字元陣列也是如此。

3字串的輸入與輸出

1、輸入

輸入乙個字元陣列可以使用 scanf語句或gets語句。

scanf語句

格式:scanf("%s",字元陣列名);

說明(1)系統會自動在輸入的字串常量後新增』\0』標誌,因此輸入時,僅輸入字串的內容即可。

(2)輸入多個字串時,以空格分隔。

gets語句

格式:gets(字元陣列名)

說明 使用gets只能輸入ー個字串。讀入的是一整行,包括空格。

例如: scanf("%s",s1); gets(s2);

對於相同的輸入hello world。s1獲取的結果僅是hello,而s2獲取的結果則是hello world!

2、輸出

輸出乙個字串可以使用 printf語句或puts語句

printf語句

格式: printf("%s",字元陣列名)

puts語句

格式:puts(字串名稱)

說明:puts語旬輸出乙個字串和乙個換行符。

對於已經宣告過的字串a, printf("%s\n",a)和puts(a)是等價的。

總結陣列主要適用於大量資料的問題,尤其與迴圈語句相配和。用來解決程式中大量資料變換的情況。陣列中每個資料都可以被定位,從而可以對資料進行更詳細複雜的計算。

第八章 陣列

一 含義 1.識別符號 用於區分不同陣列的變數名 2.陣列元素 陣列中存放的資料 3.陣列下標 對陣列進行的編號 4.元素型別 即資料型別 二 語法,步驟 1.宣告變數 資料型別 s陣列名 資料型別 陣列名 2.分配空間 陣列名 new 資料型別 陣列長度 資料型別 陣列名 new int 陣列長度...

第八章 陣列

第八章 陣列 1 陣列的基本操作 1 陣列也是一種復合型別資料型別,它由一系列相同型別的元素組成。2 定義陣列int count 4 整個陣列佔了4個相鄰的整數的儲存空間,方括號的4表示陣列的長度,而陣列元素是從0開始的,count i 位於從陣列開頭跳過4 i個位元組的儲存位置,這個陣列下標的表示...

第八章 陣列

第八章 陣列 1.陣列是一組具有相同型別的變數集合,可使用乙個統一的名字來標識這組相同型別的資料,這個名字稱為陣列名,構成陣列的每個資料項稱為陣列元素.例 用如下陣列來儲存五個學生的成績 int score 5 int代表該陣列的基型別。即陣列中元素的型別.score後方括號內的數字代表陣列元素的個...