当前位置: 首页 > news >正文

结构体解决冒泡排序

在这里插入图片描述
在这里插入图片描述

设计英雄的结构体

//1、设计结构体
struct Hero
{string name;//姓名int age;//年龄string sex;//性别
};

创建英雄的数组

//2、创建数组存放英雄
struct Hero Array[5] =
{{"刘备", 34 ,"男"},{"关羽", 45 ,"男"},{"张飞", 11 ,"男"},{"赵云", 54 ,"男"},{"貂蝉", 46 ,"女"},
};int len = sizeof(Array) / sizeof(Array[0]);

进行冒泡排序

//冒泡排序
void bubbleSort(struct Hero Array[], int len)
{for (int i = 0; i < len - 1; i++) //排序的轮数{for (int j = 0; j < len - i - 1; j++) //第i轮,需要排序的次数{if (Array[j].age > Array[j + 1].age){struct Hero temp = Array[j];Array[j] = Array[j + 1];Array[j + 1] = temp;}}}
}

打印处理后的数据

//打印函数
void printHero(struct Hero Array[], int len)
{for (int i = 0; i < len; i++){cout << "英雄的姓名为:" << Array[i].name << " 英雄的年龄为:"<< Array[i].age << " 英雄的性别为:" << Array[i].sex << endl;}
}

总结

#include<iostream>
#include<string>
using namespace std;//1、设计结构体
struct Hero
{string name;//姓名int age;//年龄string sex;//性别
};//冒泡排序
void bubbleSort(struct Hero Array[], int len)
{for (int i = 0; i < len - 1; i++) //排序的轮数{for (int j = 0; j < len - i - 1; j++) //第i轮,需要排序的次数{if (Array[j].age > Array[j + 1].age){struct Hero temp = Array[j];Array[j] = Array[j + 1];Array[j + 1] = temp;}}}
}//打印函数
void printHero(struct Hero Array[], int len)
{for (int i = 0; i < len; i++){cout << "英雄的姓名为:" << Array[i].name << " 英雄的年龄为:"<< Array[i].age << " 英雄的性别为:" << Array[i].sex << endl;}
}int main()
{//2、创建数组存放英雄struct Hero Array[5] ={{"刘备", 34 ,"男"},{"关羽", 45 ,"男"},{"张飞", 11 ,"男"},{"赵云", 54 ,"男"},{"貂蝉", 46 ,"女"},};int len = sizeof(Array) / sizeof(Array[0]);//3、按照年龄进行升序排序bubbleSort(Array,len);//4、打印排序后的结果printHero(Array, len);system("pause");return 0;
}
http://www.lqws.cn/news/460585.html

相关文章:

  • 多线程八股
  • 【Go语言基础】对齐边界与内存填充
  • 初学python的我开始Leetcode题10-2
  • Vuex(一) —— 集中式的状态管理仓库
  • AI 产品的“嵌点”(Embedded Touchpoints)
  • 如何落地你的AI创意
  • 一体三面:UEBA在数据分析、数据治理与数据安全中的应用洞察
  • 【Flink实战】 Flink SQL 中处理字符串 `‘NULL‘` 并转换为 `BIGINT`
  • 零基础入门PCB设计 一实践项目篇 第四章(STM32开发板PCB设计)
  • 破解数据可视化难题:带轴断裂的柱状图绘制全指南
  • Maven并行构建
  • IPv6 | 地址解析 / 地址管理 / 邻居发现协议(NDP)/ 无状态自动配置(SLAAC)
  • 智能群跃小助手发布说明
  • 还原自动驾驶的“前世今生”:用 Python 实现数据记录与回放系统
  • 二分查找----1.搜索插入位置
  • Java虚拟机解剖:从字节码到机器指令的终极之旅(七)
  • 端侧AI+OS垂直创新研究报告
  • 微软应用商店打不开怎么办2025,打开TLS1.3
  • shell脚本--变量及特殊变量,算术逻辑运算
  • C++ 构造函数
  • 谷歌浏览器电脑版官方下载- Google Chrome官方网页版入口
  • 猿人学js逆向比赛第一届第九题
  • window显示驱动开发—输出合并器阶段
  • 什么是Vue.js
  • Java 编程之代理模式
  • 大模型与搜索引擎的技术博弈及未来智能范式演进
  • 深入解析:如何实时获取Socket接收缓冲区的数据量
  • Python按钮点击事件快速入门
  • 全球化 2.0 | 云轴科技 ZStack与澳门天网资讯 共推AI Infra
  • gitea本地部署代码托管后仓库的新建与使用(配置好ssh密钥后仍然无法正常克隆仓库是什么原因)