C语言——查找包含字母的单词
C language - finding words containing letters
谁能帮助我完成这个简单的程序?
它必须是 C 编程语言 c99 标准。
我有一个包含很多单词(超过 500 个)的文件。
一开始,用户将写 5 个字母。
该程序将从文件中找到包含这些字母的每个单词,并在最后打印出来。字母不必按顺序排列。例如
写字母:a,b,c,d,e
包含这些字母的单词:cbadfjdejhdis, axxxabxxcexd
如果你只需要"at least one of the letters a,b,c,d,e"那么你可以调用strtok()
如果你需要 "must contain all letters of a,b,c,d,e" 那么你需要迭代,你可以使用 strchr(input, match[i])
的简单循环,其中 match 是 "abcde" 并且我从 0 循环到 strlen(match)。如果 strchr returns NULL(不匹配)你应该中止这个词(输入)并继续。
您可能会发现 strcspn 和 strspn 是有用的函数,如果您不介意它会破坏字符串,strtok 也可以。
谁能帮助我完成这个简单的程序? 它必须是 C 编程语言 c99 标准。 我有一个包含很多单词(超过 500 个)的文件。 一开始,用户将写 5 个字母。 该程序将从文件中找到包含这些字母的每个单词,并在最后打印出来。字母不必按顺序排列。例如 写字母:a,b,c,d,e
包含这些字母的单词:cbadfjdejhdis, axxxabxxcexd
如果你只需要"at least one of the letters a,b,c,d,e"那么你可以调用strtok()
如果你需要 "must contain all letters of a,b,c,d,e" 那么你需要迭代,你可以使用 strchr(input, match[i])
的简单循环,其中 match 是 "abcde" 并且我从 0 循环到 strlen(match)。如果 strchr returns NULL(不匹配)你应该中止这个词(输入)并继续。
您可能会发现 strcspn 和 strspn 是有用的函数,如果您不介意它会破坏字符串,strtok 也可以。