資源描述:
《結構體數(shù)組學習.ppt》由會員上傳分享,免費在線閱讀,更多相關內容在行業(yè)資料-天天文庫。
1、一、結構體數(shù)組形式一:間接定義structstudent{intnum;charname[20];};studentstu[2];numnamenumnamestu[0]stu[1]24Bstu形式二:直接定義structstudent{intnum;charname[20];}stu[2];形式三:無名定義struct{intnum;charname[20];}stu[2];結構數(shù)組的初始化順序初始化:structstudent{intnum;charname[20];intage;};student
2、stu[]={200401,“WangYong”,19,200402,“LiGang”,20};初始值的個數(shù)、順序和類型必須與其對應的結構成員一致如果對所有數(shù)組元素賦初值,則數(shù)組元素個數(shù)可省略。分行初始化:structstudent{intnum;charname[20];intage;};studentstu[]={{200401,“WangYong”,19},{200402,“LiGang”,20}};結構數(shù)組的引用引用形式:結構數(shù)組名[下標].成員名(結構數(shù)組元素.成員名)例如:stu[0].nu
3、mstructstudent{intnum;charname[20];charsex;intage;}stu[3];stu[1].age++;cin>>stu[0].name;strcpy(stu[0].name,“ZhaoDa”);cin>>stu[1].num;?EXAMPLE2...Sortbystudent’aver#include#include#includeusingnamespacestd;structGrade{ints1;ints
4、2;ints3;floataver;};structStudentRec{intnum;stringname;Grades;};typedefstructStudentRecSTUDENT;STUDENTinputstu(int);voidsort(STUDENTstu[],int);voidmain(){STUDENTstu[6];for(inti=0;i<6;i++)stu[i]=inputstu(i);sort(stu,6);cout<5、dl;for(i=5;i>=0;i--)cout<<6-i<<":"<6、u[i];stu[i]=stu[min];stu[min]=t;}}用結構體數(shù)組名作形參選擇法排序指針不僅可以指向普通變量、數(shù)組、數(shù)組元素、函數(shù),同樣的,指針也可以指向結構變量,我們把指向結構變量的指針稱為結構指針。結構指針指向了結構變量所在存儲空間的起始地址。二、結構體指針定義形式:結構類型名*結構指針名;使用結構指針引用結構成員:方法一:(*結構指針).成員名方法二:結構指針->成員名結構指針的運算:1.指向結構變量的指針指針不僅可以指向普通變量、數(shù)組、數(shù)組元素、函數(shù),同樣的,指針也可以指向結構變量
7、,我們把指向結構變量的指針稱為結構指針。結構指針指向了結構變量所在存儲空間的起始地址。二、結構體指針定義形式:結構類型名*結構指針名;使用結構指針引用結構成員:方法一:(*結構指針).成員名方法二:結構指針->成員名結構指針的運算:1.指向結構變量的指針(*s).numstructstudent{intnum;charname[20];charsex;intage;};studentstu;student*s=&stu;numnamesexagestus指針不僅可以指向普通變量、數(shù)組、數(shù)組元素、函數(shù),同
8、樣的,指針也可以指向結構變量,我們把指向結構變量的指針稱為結構指針。結構指針指向了結構變量所在存儲空間的起始地址。定義形式:結構類型名*結構指針名;使用結構指針引用結構成員:方法一:(*結構指針).成員名方法二:結構指針->成員名結構指針的運算:1.指向結構變量的指針(*s).nums是結構指針,(*s)表示s指向的結構變量stu,(*s).num表示s所指的結構變量中的成員num,所以(*s).num的意義是先訪問結構指針所指向的結構變量