これを行う方法がわかりません。配列内の数値が一致しています
質問:機能
int count_matches(const string arr[], int size, string query);
戻りquery
または -1
に等しい、配列内の文字列の数を実装する場合はサイズ未満の場合は0
私の答え:
#include <iostream>
#include <cmath>
#include<string>
using namespace std;
int count_matches(const string arr[], int size, string query){
int i = 0;
int numMatches;
for (;i<size;i++) {
if (string[i] == (string[i]+1)){
numMatches++;
}
}
return numMatches;
}
int main(){
string selection;
const string array[4]={"dog", "cat", "dog", "dog"};
cout<<"which animal do you want?"<<endl;
cin>> selection;
cout<< "there are " << count_matches(array, 4, selection)<< " matches"<<endl;
return 0;
}
どうしたのですか?
あなたの配列名は 'arr'なので、' string [i] 'とは何ですか?また、 'string [i] + 1'を見て、int numMatches;が初期化されていないので、何をしているのか考えてみてください。' numMatches ++; 'は何をしますか?そして 'query'をどこで使いますか? –
'query'変数はまったく使用しません。私はそれはおそらくあなたが意図したものではありません...ああ、おそらく 'numMatches'を初期化する必要があります... – mcmcc
numMatchesを"再初期化 "するにはどうすればいいですか? – user1145538