本笔记为观看64 结构体-结构体定义和使用_哔哩哔哩_bilibili 的学习笔记
1.结构体概念
结构体属于用户自定义的数据类型,允许用户存储不同的数据类型。
2.结构体定义和使用
结构体定义
通过结构体创建变量的方式
2.1 Struct 结构体名 变量名
2.2 Struct 结构体名 变量名 = {成员1值, 成员2值...}
2.3 在定义结构体时顺便创建结构体变量
3.结构体数组
4.结构体指针
5.结构体嵌套结构体
6.结构体做函数参数
7.结构体中const使用场景
8.结构体案例
#include<iostream>
#include <string>
using namespace std;
//1、设计英雄结构体
//2、创建数组存放5名英雄
//3、对数组进行排序,按照年龄进行升序排序
//4、将排序后结果打印输出
//1、设计英雄结构体
struct Hero
{
//姓名
string name;
//年龄
int age;
//性别
string sex;
};
//用冒泡排序,实现升序
void bubbleSort(struct Hero heroArray[], int len)
{
for (int i = 0; i < len - i - 1; i++)
{
for (int j = 0; j < len - i - 1; j++)
{
//如果j 下标的元素年龄 大于j+1下标的元素的年龄,交换两个元素
if(heroArray[j].age > heroArray[j+1].age)
{
struct Hero temp = heroArray[j];
heroArray[j] = heroArray[j + 1];
heroArray[j + 1] = temp;
}
}
}
}
//打印排序后数组中的信息
void printHero(string Hero heroArray[] , int len)
{
for(int i = 0; i < len ; i++)
{
cout << "姓名: " << heroArray[i].name << " 年龄: " << heroArray[i].age
<< "性别: " << heroArray[i].sex << endl;
}
}
int main(){
//2、创建数组存放5名英雄
struct Hero heroArray[5] =
{
{"刘备",23,"男"},
{"关羽",22,"男"},
{"张飞",23,"男"},
{"赵云",22,"男"},
{"貂蝉",19,"女"},
};
//测试
int len = sizeof(heroArray) / sizeof(heroArray[0]);
for (int i = 0; i < len; i++)
{
cout << "姓名: " << heroArray[i].name << " 年龄: " << heroArray[i].age
<< "性别: " << heroArray[i].sex << endl;
}
//3、对数组进行排序,按照年龄进行升序排序
bubbleSort(heroArray , len);
//4、将排序后的结果打印输出
printHero(heroArray , len);
system("pause");
}