在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
结构体: 结构体是一种特殊形态的类,与类的唯一区别是:类的缺省访问权限是private,而结构体的缺省访问权限是public。另外,结构体存在的主要原因就是与c语言保持兼容。 什么时候用结构体,而不用类呢?主要用来保存数据。而没有什么操作的类型。 人们通常将结构体的数据成员设为共有,因此这时使用结构体更加方便一些
1 #include <iostream> 2 #include <string> 3 using namespace std; 4 5 struct Student{ 6 string name; 7 long id; 8 string sex; 9 double score; 10 }; 11 void main(){ 12 Student s; 13 //访问结构体的数据成员 14 s.name = "张三"; 15 s.sex = "男"; 16 cout << s.name << "\n"<<s.sex << endl; 17 //使用指针访问结构体的数据成员 18 Student* ss; 19 ss = &s; 20 ss->score=99; 21 ss->sex="女"; 22 ss->name="李四"; 23 cout << ss->name << "\n" << ss->sex << "\n" << ss->score << endl; 24 //结构体类型相同的两个变量,相互之间可以进行赋值 25 Student s1; 26 s1 = s; 27 cout << s1.name << "\n" << s1.sex <<endl; 28 } 对结构数组以某一个成员作为关键字进行排序,下面提供了两种方法,一种是直接用数组访问的方式,一种是用指针间接访问的方式 1 #include <iostream> 2 #include <string> 3 using namespace std; 4 5 //对结构数组以某一成员做关键字进行排序 6 struct Person{ //结构定义 7 string name; 8 unsigned int id; 9 double salary; //结构成员声明 10 }; 11 Person p[3]; //结构数组定义 12 13 //使用指针的方法排序 14 void main(){ 15 Person* pp[3]; 16 Person* temp; 17 for(int i=0;i<3;i++){ 18 pp[i] = &p[i]; 19 } 20 for(int i = 0;i<3;i++){ 21 cout << "请输入名字:"; 22 cin >> p[i].name; 23 cout << "请输入ID:"; 24 cin >> p[i].id; 25 cout << "请输入薪水:"; 26 cin >> p[i].salary; 27 } 28 cout << "After this sorting:" << endl; 29 for(int i=1;i<3;i++){ 30 for(int j=0;j<3-i;j++){ 31 if(pp[j]->salary>pp[j+1]->salary){ 32 temp = pp[j]; 33 pp[j] = pp[j+1]; 34 pp[j+1] = temp; 35 } 36 } 37 } 38 for(int i=0;i<3;i++){ 39 cout << "name:" << pp[i]->name << "\t" << "id :" << pp[i]->id<< "\t" << "salary:" << pp[i]->salary << endl; 40 } 41 }
|
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论