我正在尝试编写一个程序,将用户输入的子字符串与字符串数组进行比较。
#include <stdio.h>
#include <string.h>
char animals[][20] = {
"dogs are cool",
"frogs are freaky",
"monkeys are crazy"
};
int main() {
char input[10];
puts("Enter animal name: ");
fgets(input, sizeof(input), stdin);
int i;
for(i = 0; i < 3; i++) {
if(strstr(animals[i], input))
printf("%s", animals[i]);
}
return 0;
}
例如,当我输入青蛙时,它应该打印消息“青蛙很奇怪”,但它什么也没打印。
所以我尝试写一行打印出strstr()函数的值,每次都返回0,这意味着所有的比较都失败了。我不明白为什么,有人可以帮我吗?