Morisummer.. 2022-09-23 21:57 采纳率: 85.2%
浏览 46
已结题

顺序查找出现问题c++

img


为什么出错啊,代码如下


#include<iostream>
#include<string>
using namespace std;

class Student
{
public:
    void setName(string name)
    {
        m_name = name;
    }

    void setScore(int num)
    {
        m_score = num;
    }

    string getName()
    {
        return m_name;
    }

    int getScore()
    {
        return m_score;
    }

private:
    string m_name;
    int m_score;
};

int main()
{
    string name;
    int num,score,temp,max=0;
    Student arr[100];
    cin >> num;
    for (int i = 0; i < num; i++)
    {
        cin >> score >> name;
        arr[i].setScore(num);
        arr[i].setName(name);
        if (arr[i].getScore() > max)
        {
            max = arr[i].getScore();
            temp = i ;
        }
    }
    cout << arr[temp].getName() << endl;
    return 0;
}

自己测试是没问题的啊

  • 写回答

1条回答 默认 最新

  • Xiao Ice 2022-09-24 07:34
    关注

    目测是一些特殊情况导致的WA
    我能想到的就是: 只有一个人,且这个人的分数是0分
    这种情况下走下你的代码,temp就会是一个未知的数导致错误。两个解决办法,一个是temp初始化为0,一个是大于号改为大于等于

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

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 9月27日
  • 已采纳回答 9月27日
  • 修改了问题 9月23日
  • 创建了问题 9月23日

悬赏问题

  • ¥15 请问有人会紧聚焦相关的matlab知识嘛?
  • ¥15 网络通信安全解决方案
  • ¥50 yalmip+Gurobi
  • ¥20 win10修改放大文本以及缩放与布局后蓝屏无法正常进入桌面
  • ¥15 itunes恢复数据最后一步发生错误
  • ¥15 关于#windows#的问题:2024年5月15日的win11更新后资源管理器没有地址栏了顶部的地址栏和文件搜索都消失了
  • ¥100 H5网页如何调用微信扫一扫功能?
  • ¥15 讲解电路图,付费求解
  • ¥15 有偿请教计算电磁学的问题涉及到空间中时域UTD和FDTD算法结合的
  • ¥15 three.js添加后处理以后模型锯齿化严重