这个C ++代码有什么问题?

时间:2016-07-21 16:03:44

标签: c++

我想使用算法来查找学生分数。我想输入一个数字,如果这个数字在分数之间,那么找到名字和学号,如果没有,我收到它是不可用的。但是,有一个我无法找到的问题。你有什么解决方案吗? 谢谢,

    <output class="output" id="owned"></output>
    <output class="output" id="used"></output>

1 个答案:

答案 0 :(得分:1)

您应该使用std::find_if,而不是std::find

您应该返回truefalse,具体取决于是否找到了数据。然后可以检查来自std::find_if的返回迭代器:

auto iter = std::find_if(my_vector.begin(), my_vector.end(),
                      [] (student const& scores){ return scores.score ==l; });

if ( iter != my_vector.end())
      cout<<"it is available"<<(*iter).name<<(*iter).stno;
else
      cout<<"not available;