#include<stdio.h>
#include<string.h>
int findString(char stringArray[][100],char *targetString,int n)
{
int i;
int num = 0;
for(i = 0; i<n; i++)
{
if(strcmp(targetString,stringArray[i]) == 0)
{
num++;
}
}
return num;
}
int main()
{
int j,m;
char target[100];
char Array[10][100];
scanf("%d", &m);
for (j = 0; j < m; j++)
{
scanf("%s", Array[j]);
}
scanf("%s", target);
int k = findString(Array,target,m);
printf("%d",&k);
return 0;
}
你数组没赋值,里面全是空的,能找的到才怪啊
scanf("%s", &Array[j]);
scanf("%s", &target);
https://stackoverflow.com/questions/2340281/check-if-a-string-contains-a-string-in-c
你的输入是什么,scanf函数接收字符串的时候,字符串中间不能有空格,如果字符串之间有空格,把scanf("%s",Array[j])改成gets(Array[j]),scanf("%s", target);改成gets(target);