蜚语. 2021-10-10 23:22 采纳率: 92.3%
浏览 39
已结题

就是给出五个英雄的信息,然后以他们的年龄为依据,进行人物信息的冒泡排序,结果就没有输出(有示意)


#include<iostream>
#include<string>
using namespace std;
struct hero
{
    //姓名
    string name;
    //年龄
    int age;
    //性别
    string sex;
};

//用函数输入信息
void sj(struct hero hArray[5], int len)
{
    hArray[0].name = "刘备"; hArray[0].age = 23; hArray[0].sex = "男";
    hArray[1].name = "关羽"; hArray[1].age = 22; hArray[1].sex = "男";
    hArray[2].name = "张飞"; hArray[2].age = 20; hArray[2].sex = "男";
    hArray[3].name = "赵云"; hArray[3].age = 21; hArray[3].sex = "男";
    hArray[4].name = "貂蝉"; hArray[4].age = 19; hArray[4].sex = "女";
}
//用循环函数打印结果
void print(struct hero hArray[5], int len)
{
    for (int i = 0; i < 5; i++)
    {    
        cout <<" 英雄姓名;" <<hArray[i].name<< " 英雄年龄;" << hArray[i].age << " 英雄性别;" << hArray[i].sex << endl;
    }
}
int main()
{
    struct hero hArray[5];
    //用函数进行冒泡排序
    int len = sizeof(hArray) / sizeof(hArray[0]);
    for (int i = 0; i < len; i++)
    {
        for (int j = 0; j < len - i - 1; j++)
        {
            if(hArray[j].age>hArray[i+1].age)
            {
                struct  hero temp = hArray[j];
                hArray[j] = hArray[j + 1];
                hArray[j + 1] = temp;
            }
        }
    }
    print(hArray, len);
    return(0);
}

我的错误输出为
英雄姓名; 英雄年龄;-858993460 英雄性别;
英雄姓名; 英雄年龄;-858993460 英雄性别;
英雄姓名; 英雄年龄;-858993460 英雄性别;
英雄姓名; 英雄年龄;-858993460 英雄性别;
英雄姓名; 英雄年龄;-858993460 英雄性别;

  • 写回答

1条回答 默认 最新

  • 关注

    你没调用sj函数
    在main中,创建hero数组后,添加 sj(hArray, 5);初始化对应内容即可
    有帮助望采纳~

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月19日
  • 已采纳回答 10月11日
  • 创建了问题 10月10日

悬赏问题

  • ¥15 求帮我调试一下freefem代码
  • ¥15 matlab代码解决,怎么运行
  • ¥15 R语言Rstudio突然无法启动
  • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
  • ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
  • ¥15 用windows做服务的同志有吗
  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?