複習2 結構體

2021-10-06 19:49:01 字數 2108 閱讀 4596

第五章:結構體

主要內容:

1.結構體型別的定義

2.結構體變數的引用

3.結構體變數的初始化

4.結構體陣列

5.指向結構體變數的指標

1.struct     [結構體名]

;struct是關鍵字,不能省略。結構體型別與結構體變數概念不同

型別:不分配記憶體,不能賦值、訪問、運算;

變數;分配記憶體,可以賦值、訪問、運算;

結構體可以巢狀

例如:

struct  date

;struct  student

stu;

或者:

struct  student

birthday;

}stu;

不過第二種方法會導致date結構體作用域只在結構體內部,在外面不能用

2.結構體變數不能整體賦初值,初始化的時候可以,

cin>>student1.num;     student1.num=100;//正確

cin>>stuudent1;//錯誤

但是可以將結構體變數整體賦給另乙個結構體變數

student2=student1;

巢狀的結構體變數必須逐層引用。

student1.birthday.day=25;

結構體變數中的成員可以同一般變數一樣進行運算。

student1.birthday.day++;       student1.score+=60;

3.初始化三種形式,與定義的三種形式對應

形式一:

struct     結構體名

;struct  結構體名  結構體變數=;

形式二:

struct     結構體名

結構體變數=;

形式三://不常用

struct

結構體變數=;

4.結構體陣列內各個元素在記憶體中連續存放。

5.乙個結構體變數的指標就是該變數所佔據的記憶體段的起始位址。

例如;(三種輸出型別等價)

int main( );

student stu, *p=&stu;

stu.num=10301;  strcpy(stu.name,″wang fu″);     

stu.***=『f』;   stu.score=89.5;

cout name<<″ ″<< p-> ***<<″ ″<< p-> score《題目整理:

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

#include #includeusing namespace std;

struct person

;int main( );

int i,j;

char leader_name[20];

for(i=0;i<10;i++)

for(i=0;i<3;i++);

bool comp(student x,student y)

int main()

stu[j].sum=b;

//cout《題3:

n只小白鼠(1#includeusing namespace std;

struct mouse

;bool comp(mouse x,mouse y)

int main()

sort(m,m+n,comp);

for(i=0;i

2.3兩題都用到了排序,我選擇了比較簡單的sort方法,上學期學習了氣泡排序和簡單選擇排序,這裡順帶複習一下(分別用兩種方法對10個數從小到大進行排序)

氣泡排序:

#include#includeusing namespace std;

int main()

}for(i=0;i<10;i++)

cout《簡單選擇排序:

#include#includeusing namespace std;

int main()

temp=a[i];a[i]=a[k];a[k]=temp;

}for(i=0;i<10;i++)

cout<

結構體與共用體的複習(2)

指向結構體變數的指標 乙個結構體變數的指標就是該變數所佔據的記憶體段的起始位址。可以設乙個指標變數,用來指向乙個結構體變數,此時該指標變數的值是結構體變數的起始位址。指標變數也可以用來指向結構體陣列中的元素。include include int main struct student stu 1 ...

結構體複習

1.編寫乙個函式print,輸出若干位學生的資料記錄,有5位學生,每一位學生的資料記錄包括學號 num 姓名 name 三門課的成績 g 3 要求用主函式輸入這些記錄,用print函式輸出這些記錄。請定義結構體程式設計實現。an highlighted block var foo bar inclu...

結構體複習總結

結構體 先簡單的介紹一下結構體 結構體是一種型別,是一些值的集合,這些值稱為成員變數。結構體的每個成員可以是不同型別的變數。1.結構體型別的建立 struct stua,p 這裡stu是結構體名稱,a是結構體變數,p是指向結構體的指標。在建立結構體時,結構體名稱不能省略,否則無法引用結構體。在定義結...