C语言实现判断字符串str1是否是str2的子串
以下是C语言实现判断字符串str1是否是str2的子串的代码:
c
#include <stdio.h>
#include <string.h>
int isSubstring(char *str1, char *str2);
int main() {
char str1[100], str2[100];
printf("请输入第一个字符串:
");
scanf("%s", str1);
printf("请输入第二个字符串:
");
scanf("%s", str2);
if (isSubstring(str1, str2)) {
printf("%s是%s的子串
", str1, str2);
} else {
printf("%s不是%s的子串
", str1, str2);
}
return 0;
}
int isSubstring(char *str1, char *str2) {
int len1 = strlen(str1);
int len2 = strlen(str2);
int i, j;
for (i = 0; i <= len1 - len2; i++) {
for (j = 0; j < len2; j++) {
if (str1[i+j] != str2[j]) {
break;
}
}
if (j == len2) {
return 1;
}
}
return 0;
}
在该程序中isSubstring函数用于判断字符串str1是否是字符串str2的子串。该函数的实现方法是:先求出str1和str2的长度,然后对于str1中的每一个字符,从该字符开始依次向后取长度为len2的子串,与str2进行比较。如果子串与str2相同,返回1;否则继续比较下一个字符。如果所有字符都被比较完毕,仍然没有找到与str2相同的子串,则返回0。在主函数中输入两个字符串并调用isSubstring函数进行判断,最后输出判断结果。
免责声明:本站发布的教育资讯(图片、视频和文字)以本站原创、转载和分享为主,文章观点不代表本网站立场。
如果本文侵犯了您的权益,请联系底部站长邮箱进行举报反馈,一经查实,我们将在第一时间处理,感谢您对本站的关注!
新励学网教育平台
海量全面 · 详细解读 · 快捷可靠
累积科普文章数:18,862,126篇