5 2結構體陣列

2021-10-03 06:43:49 字數 1892 閱讀 4023

語法:struct 結構體名 陣列名[元素個數]

//首先是進行結構體的定義

struct student

;int

main()

,//陣列中的兩個元素之間仍然是用逗號隔開,}

;//還可以跟普通陣列一樣進行賦值,但是要使用「.」訪問

//例如將陣列中的第2號位的資訊進行更改

class[2

].name =

"student3"

;class[2

].age =20;

class[2

].score =66;

}

對於結構體陣列中的元素進行賦值

也可以跟普通的陣列一樣使用for迴圈進行賦值

但是示例中的陣列,由於定義的結構體成員值是三個,所以此陣列每個元素都包括三個資料成員

class[0].name class[0].age class[0].score

class[1].name class[1].age class[1].score

class[2].name class[2].age class[2].score

所以在使用for迴圈的時候要對於每乙個值進行賦值

for(int i=

0;i <

3;i++)

cin >>

class

[i].name >>

class

[i].age >>

class

[i].score;

//輸出同

應用舉例:

對候選人得票的統計程式

設有3個候選人,最終只能有1人當選。今有10個人參加投票,從鍵盤先後輸入這10個人所投的候選人的名字,要求最後輸出這3個候選人的得票結果。

#include

#include

using

namespace std;

struct candidate

;int

main()

char vote[20]

;//此處依次輸入的是10人所投的候選人姓名

for(

int i =

0;i <

10;i++

) cout<<

"得票統計"

int i =

0;i <

3;i++

} cout<.name<<

" : "

<.count

}

num只小白鼠(1 < num < 100),每只白鼠頭上戴著一頂有顏色的帽子。現在稱出每只白鼠的重量,要求按照白鼠重量從大到小的順序輸出它們頭上帽子的顏色。帽子的顏色用「red」,「blue」等字串來表示。不同的小白鼠可以戴相同顏色的帽子。白鼠的重量用整數表示。

輸入第一行為乙個整數num,表示小白鼠的數目。下面有num行,每行是乙隻白鼠的資訊。第乙個為不大於1000的正整數,表示白鼠的重量,;第二個為字串,表示白鼠的帽子顏色,字串長度不超過10個字元。注意:白鼠的重量各不相同。

輸出按照白鼠的重量從大到小的順序輸出白鼠的帽子顏色。

//這道題可以用兩個陣列來完成,乙個陣列是重量,另乙個是帽子顏色

//現在用結構體陣列來試一下

#include

using

namespace std;

struct whitemouse

;int

main()

for(

int i=

0; i) cout<.color

}

結構體 結構體陣列

void test 函式遞迴呼叫 允許函式體裡再次呼叫函式本身 使用遞迴一定要有出口 long fact int n return n fact n 1 定義乙個新的資料型別 struct mypoint 結構體型別所占用的記憶體空間是最大資料型別的整數倍。因為結構體型別的變數在分配記憶體時有記憶體...

結構體 結構體陣列

struct 結構體型別名 型別名 成員名 型別名 成員名 先宣告結構體型別,再定義結構體變數名 宣告結構體型別,不分配空間 定義結構體型別變數,就要分配記憶體空間 作 者 hh 完成日期 2018年8月15日 版本號 v1.0 問題描述 結構體巢狀 賦值 輸出 輸入描述 程式輸出 include ...

結構體陣列

陣列元素可以是任何的簡單資料型別,當然也可以是陣列 現在我們說陣列的元素也可以是結構型別的。可以構成結構型陣列。在實際應用中,經常用結構陣列來表示具有相同資料結構的乙個群體。如乙個班的學生檔案,乙個車間職工的工資表等。結構陣列的定義方法和結構變數相似,只需說明它為陣列型別即可。例如 include ...