#include <stdio.h>
#define Max 200
typedef struct
{
char data[Max];
int length;
}Sqstring;
char str1[Max];
char str2[Max];
void Strassign(Sqstring &s, char str[])
{
int i;
for (i = 0; str[i] != '\0'; i++)
s.data[i] = str[i];
s.length = i;
}
int index(Sqstring s, Sqstring t)
{
int i = 0, j = 0;
while (i<s.length&&j<t.length)
{
if (s.data[i] == t.data[j])
{
i++;
j++;
}
else
{
i = i - j + 1;
j = 0;
}
}
if (j >= t.length)
return (i - t.length);
else
return -1;
}
int main()
{
Sqstring s1, s2;
printf("请输入第一个字符串\n");
scanf("%s", str1);
Strassign(s1, str1);
printf("请输入第二个字符串\n");
scanf("%s", str2);
Strassign(s2, str2);
if (index(s1, s2) == -1)
printf("匹配不成功\n");
else
printf("匹配的第一个字符的下标为:%d\n", index(s1, s2));
return 0;
}
字符匹配c
最新推荐文章于 2024-02-24 17:11:15 发布