一、數據結構構造
1、數組類型
數組是有一定順序關系的若干變量的一個集合,其中每一個變量我們稱為數組的元素,分為一維數組、多維數組。一維數組有一個下標就能確定位置。多維數組元素有多個下標,以標識它在數組中的位置。
一維數組
定義:<數據類型> <數組名> < [ ] >? 例:int? i [10]。初始化方法:
普通局部數組沒有初始化,則數組中元素的值,是不確定的。全局數組沒有初始化默認為0。
全部初始化,給每一位元素寫值,例:int? i [5]={1,2,3,4,5};還可以寫成 int? i []={1,2,3,4,5};兩種寫法都是5個元素。
局部初始化,只給數組里前幾位初始化,不完全初始化,余下的就會默認為0。例:int? i [5]={0};剩下的4位默認為0。int? i [5]={1,2}; 剩下的3位都為0。
二維數組
多維數組要多個下標,二維數組有兩個下標,才能確定位置。定義: <數據類型> <數組名> < [ ] >< [ ] >? 例:int? i [5][10]; 可以看成是5個一維數組,每個一維數組10個元素。初始化方式:
全部初始化,例:int? i [2][3]={ {1,2,3},{1,2,3} };{}里有兩個一維數組。給每個元素賦值。還可以寫成 int? i [][3]={ {1,2,3},{1,2,3} };
部分初始化:int? i [2][3]={ {1},{1} };給個每個給前面1個(或多個)元素賦值,名列前茅個一維剩下的3個元素默認為0,第二個也是。
線性賦值,例:int? i [2][3]={1,2,3,1,2,3}; 這里數組共有6個元素,里面不用{}分開,直接給每位元素賦值。
線性部分初始化,例:int? i [2][3]={1,2} ; 剩下的4位元素都默認為0。
2、結構體類型
結構體是C語言中一種重要的數據類型,該數據類型由一組稱為成員(或稱為域,或稱為元素)的不同數據組成,其中每個成員可以具有不同的類型。結構體通常用來表示類型不同但是又相關的若干數據。結構體類型不是由系統定義好的,而是需要程序設計者自己定義的。C語言提供了關鍵字struct來標識所定義的結構體類型。
關鍵字struct和結構體名組合成一種類型標識符,其地位如同通常的int、char等類型標識符,其用途就像 int 類型標識符標識整型變量一樣可以用來定義結構體變量。定義變量以后,該變量就可以像定義的其他變量一樣使用了;成員又稱為成員變量,它是結構體所包含的若干個基本的結構類型,必須用“{}”括起來,并且要以分號結束,每個成員應表明具體的數據類型。
3、共用體類型
不同數據類型的數據可以使用共同的存儲區域,這種數據構造類型稱為共用體,簡稱共用,又稱聯合體。共用體在定義、說明和使用形式上與結構體相似。兩者本質上的不同僅在于使用內存的方式上。
延伸閱讀:
二、數據結構是什么
數據結構是計算機存儲、組織數據的方式。數據結構是指相互之間存在一種或多種特定關系的數據元素的集合。通常情況下,精心選擇的數據結構可以帶來更高的運行或者存儲效率。 數據結構往往同高效的檢索算法和索引技術有關。