第14節 C語言五大型別之構造型別 陣列

2021-07-28 13:15:13 字數 2731 閱讀 6522

構造型別

是乙個復合的資料型別,進行批量處理資料的時候,就得引入乙個新的型別,同時能夠儲存多個 變數。

陣列就是能夠儲存相同資料型別的 有序的 集合。

1.能夠儲存相同資料型別的變數

2.陣列中儲存的每乙個變數的記憶體位址,在記憶體中是

連續的一段記憶體空間。(順序儲存結構)

3.集合 指的是陣列元素在資料結構上 邏輯關係

集合   線性關係    樹      圖

用於批量處理 資料用的。一次處理很多個變數。

一般格式: 型別標示符  陣列名;

例如:要建立乙個陣列,這個陣列能夠儲存10個整型變數的資料,陣列名稱叫做arr。array

int arr[10];

表示:宣告了乙個能夠儲存10個整型變數的陣列arr。[10] 數字10表示的是,這個陣列能夠儲存變數的個數。也叫做陣列元素的個數。

int a0,a1,a2,a3,a4,a5,a6,a7,a8,a9<==>int arr[10]

int a0,a1,…….a9999 <==>int brr[10000];

練習:宣告乙個能夠儲存5個字元型別的陣列crr;

char     crr[5];

double  drr[3];

1.4.1 變數的初始化

int  a = 0;

int  b = 100;

char  c = 0;char d = 'a';

1.4.2 陣列的初始化 

1.通用初始化的方式(只限數值)

int a[10] = ;

2.給每乙個陣列元素賦初始值

int b[10] = ;

char c[5] = ;

double f[3] = ;

3.鍵盤上動態賦值

3.1 陣列的賦值和取值            

下標法  a[0],c語言中陣列的下標是從0開始到n-1結束。為了編譯器定址方便,所以編譯器的開發者,在編譯器中約定c語言陣列下標是從0開始。

注意:陣列和變數不一樣,變數支援用賦值表示式直接賦值,但是陣列不能總體賦值。可以通過陣列下標一次給乙個陣列元素賦值。

賦值:int a[5] = ;

a[0] = 1;//給第乙個陣列元素賦值

a[1] = 2;

a[2] = 3;

a[3] = 4;

a[4] = 5;//給第五個陣列元素賦值

取值:a[0];a[i++]

注意:陣列的下標不能越界訪問,陣列下標越界會造成不可預料的後果。

陣列的賦值和取值,陣列最值,陣列中某個字元或數出現最多的問題,字串的壓縮和解壓縮演算法,排序。

1.氣泡排序

氣泡法,相鄰的兩個數兩兩比較,如果後者小於前者就就交換兩個數的值。(數值交換的基礎上)

2.選擇排序

先假定乙個數最小,然後去比較,如果找到比它還小的數就和這個假定的最小的值交換。然後先後移動乙個數字,繼續假定位最小,重複上邊的過程。

陣列的分類是以陣列的維度來區分,分為一維和多維陣列,就是下標運算子的個數。int a;char ch;

c99 可變陣列

int b = 0;

scanf("%d",&b);

int a[b];

不定長陣列   int a = ;

二維陣列能夠構成乙個平面,2880 * 2560  1440*900   1920 *1080,點陣。常用於解決如數學  矩陣問題。

1       2       3        4

2       2       3        4

3       2       3        4

像這樣多行,多列的問題就可以用二維陣列來解決。

1、 一般表示形式

型別識別符號   陣列名[行][列];

例如:int arr[3][4];

2、 二維陣列初始化

2.1.通用初始化方式(陣列元素的值 數值)

int arr[3][4] = ;

2.2.給每乙個陣列元素賦初始值

int arr[3][4] = ,,}

2.3.從鍵盤上動態輸入資料

for(i=0;i《行;i++)

}for(i=0;i《行;i++)

}練習1:有乙個陣列a,能夠儲存10個整型變數的資料,請從鍵盤上輸入10個數,第一問,求該陣列中得最大值和最小值。

練習2:從鍵盤上輸入一些字元,直到回車為止,把所有字元儲存到乙個字元陣列中去,如:aaaaabbbccdde,請輸出位a5b4c3d2e1

練習3:建立乙個字元陣列初始化位a5b4c3d2e1,輸出為aaaaabbbbccccdde。

練習4:n*n矩陣(螺旋矩陣)也就是說從鍵盤上輸入連個數,第乙個數就是舉證的行和高 (5  5*5),第二數表示的

終止的條件(10   1~10,25 1~25)

1 2  3 4  5

*  *  *  *  6

*  *  *  *  7

*  *  *  *  8

*  *11 10 9

1     2    3   4    5

16  17 18  19   6

15  24  25  20  7

14  22  22  21  8

13 12   11  10  9

第19節 C語言五大型別之指標型別

資料型別 指標型別 1.基本資料型別 整型 實型字元型 布林型字串 列舉型別 2.構造型別 陣列 結構體 聯合體3.指標型別 指標是一種特殊的資料型別,儲存是 不是乙個具體的數值,非數值資料,是記憶體位址。一般格式 型別標示符 變數名 型別標示符指的是指標變數儲存的記憶體位址中儲存的資料的型別。例如...

SQL語言分為五大類

sql語言分為五大類 ddl 資料定義語言 create alter drop 這些語句自動提交,無需用commit提交。data definition language dql 資料查詢語言 select 查詢語句不存在提交問題。dml 資料操縱語言 insert update delete 這些...

Redis五大型別之String操作

檢視和連線redis命令列 redis cli help 檢視所有string型別的操作 help stringstring型別分為三種 1.string 2.number 3.bit 應用場景 秒殺 incr 分布式鎖setnx 一 string 型別 1 插入資料 set k1 aa 2 如果k...