我想弄清楚如何测试两个字符串在一起,以查看名为“目标”的数组中的字母是否包含在数组“str1”中。如果target中的所有字母都可以在str1中找到,那么testWord返回true,否则返回false。这是我到目前为止的代码,找到一个字母后停止。我如何继续循环str1的其余部分?C编程拼字游戏类型
#include <stdio.h>
int testWord(char str1[], char target[]);
int main() {
char str1 [8] = {'q','i','j','i','b','o'};
char target [3] = {'j','i','b'};
int a= testWord(str1, target);
printf("%d", a);
return 0;
}
int testWord(char str1[], char target[]) {
for(int i = 0; i < sizeof(*str1) ; i++) {
for (int j = 0; j < sizeof(*target); j++) {
if (strstr(str1, target)) {
printf("%s%c%s\n","Target letter ", target[i], " was found");
//delete letter from set
str1[i - 1] = str1[i];
i++;
}
}
}
return 0;
}
使用'strstr()'。 – owacoder
您能否以人类可读的方式格式化您的代码? FOr实例一致地在操作符周围添加空格,缩进代码一致等。 –