搜索多维数组

时间:2016-10-13 18:11:22

标签: c++

我用C ++创建了一个多维数组,但是当我搜索它时它没有返回任何内容。只是想知道我是否在代码中搞砸了什么?完全披露:这本来是一个课堂作业,但我在2周前就转了。我要求澄清未来的计划。

我把主体(减去一些列表,因为它是1000个条目)放在

之下
#include <cstdlib>
#include <string>
#include <iostream>

using namespace std;

int main(int argc, char** argv) {

    std::string name;
    std::string age;


    //declare 1000*2 Array     
    std::string array[1000][2] = 
   {
      { "Karen Rose","25"       },
{   "Cora Faison","11"      },
{   "Donna Jones","49"      },
{   "Robert Lowe","31"      },
{   "Patricia Johnston","17"    },
{   "Maryanne Hicks","40"       },
{   "James Mcmurray","53"       },

};

    cout << "Enter a name to search for " << endl;
    cin >> name;

    for(int i = 0; i > 1000; i++)
    {
        if(name == array[i][0])
        {
            age = array[i][1];
            cout << name << "'s age is" << age << endl;
        }
        else
        {
            cout << "we found nothing" << endl;
    }

}

 return 0;
}

3 个答案:

答案 0 :(得分:2)

除了让你的循环测试向后,使用cin >> name只能获得名字。你先测试和最后测试。因此,你的测试永远不会成功。

使用std::getline

进行一些调试工作会发现两个错误。

答案 1 :(得分:1)

for(int i = 0; i > 1000; i++)应为for(int i = 0; i < 1000; i++)。您编写它的方式将永远不会执行for循环。

答案 2 :(得分:0)

我&gt; 1000使你的循环空。 &LT;是你想要的ooerator。

但无论如何为什么1000而不是7?