配列から索引検索を実行する方法

文字列の索引検索を実行しようとしていますが、問題は、最初のエントリであるi [0]だけが表示されることです。私は別のエントリを検索する場合、それは動作しません。助けてください..     void clist(文字列fn []、文字列ln []、intサイズ);

int search_list(const string fn[],const string ln[], int size, string find);

int main(){

    string search;

    cout << "This program searches a list .\n";

    const int total = 3;

    string fn[total];
    string ln[total];

    clist(fn,ln, total);

    cout << "Search contact:____  ";

    cin >> search;

    search_list(fn,ln, total, search);

  return 0;

}

void clist(string fn[],string ln[], int size){

    cout << "Enter " << size << " contact.\n";

    for (int index = 0; index < size; index++)
     cin >> fn[index] >> ln[index] ;

}

int search_list(const string fn[], const string ln[],int size, string search){

   for(int i=0;i
1
それは宿題ですか?宿題の場合はそのタグを付けてください
追加された 著者 Ruggero Turra,
将来、同じ質問を1日に3回作成する必要はありません。新規または追加の情報を追加する場合は、質問を編集できます。
追加された 著者 Blastfurnace,

2 答え

ループを作成していて、最初の反復後にループを明示的に break するように指示しています。次のように記述してみてください:

bool found = false;
for(int i=0;i
1
追加された
私の目の前で、ありがとう。私は記録から質問があります。どうやってC ++を学びましたか?私は学びたいと私は本当に苦労しています。推薦、チュートリアル、または練習以外の助言。あなたがこのような特定のエラーを見つけることができるときには、練習だけでは十分ではないからです。
追加された 著者 user836910,
@ user836910:それはほとんどあなたのような、練習していた。次回このようなエラーが発生すると、何を探すべきかを知るでしょう。それはそれに苦労した後にのみ起こります。
追加された 著者 K-ballo,

検索する要素を与え、その要素のインデックスを見つける関数が必要です。自分で書くのではなく、配列の std :: find

#include 
#include 
#include 

int main()
{
   std::string xx[3];
   xx[0] = "zero";
   xx[1] = "one";
   xx[2] = "two";
   int index = std::find(xx, xx+3, "two") - xx;
   if (index < 3) std::cout << "found in position: " << index << endl;
   else std::cout << "not found" << endl;
}

あなたの情報を2つの配列に格納するには、少なくとも std :: vector または struct

0
追加された
OPは誰ですか?しかし、はい...それは宿題のようです
追加された 著者 Ruggero Turra,
宿題のように見える。 OPは std :: find()を使用できないのでしょうか?
追加された 著者 André Caron,
OPは「オリジナルのポスター」を意味し、質問をした人/スレッドを開始した人。
追加された 著者 André Caron,