//查找文本串中的单词
//char *strtok(char *str, const char *delimiters):分割字符串。
//首次调用时,str指向要分割的字符串,之后再次调用时要把str设成NULL.
#include <stdio.h>
#include <string.h>
void ToLower(char *s); //把输入的大写字母变小写
char s1[10000], s2[10000];
int main()
{
gets(s1);
gets(s2);
ToLower(s1);
ToLower(s2);
int firstPos, t = 0;
char *pch;
pch= strtok(s2, " "); //首次调用
while(pch != NULL)
{
if(strcmp(pch, s1) == 0) //如果找到了单词
{
t++;
//pch指向的地址-s2的首地址
if(t == 1) firstPos = pch - s2;
}
pch= strtok(NULL, " "); //非首次调用
}
if(t > 0)
printf("出现%d次 位置:%d", t, firstPos);
else
printf("-1\n");
return 0;
}
void ToLower(char *s)
{
int len = strlen(s);
for(int i = 0; i < len; i++)
{
if(s[i] >= 'A' && s[i] <= 'Z')
s[i] += 32; //转为小写
}
}
查找文本串中的单词-C语言
最新推荐文章于 2024-07-03 15:57:27 发布