어떻게해야하는지 알 수 없습니다.배열에 일치하는 개수가 있습니다.
질문 : 함수
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