admin 管理员组文章数量: 887021
2024年1月18日发(作者:dt代表什么)
以下是一个简单的C语言函数,用于在一个字符串中查找另一个字符串的子串。这个函数使用了一个基本的暴力搜索方法,通过比较目标字符串中的每个字符来查找子串。
#include
#include
// 函数原型声明
int findSubstring(char* str, char* sub);
int main() {
char str[100];
char sub[100];
printf("输入主字符串: ");
fgets(str, sizeof(str), stdin); // 从用户输入读取字符串
str[strcspn(str, "n")] = 0; // 删除末尾的换行符
printf("输入要查找的子字符串: ");
fgets(sub, sizeof(sub), stdin); // 从用户输入读取字符串
sub[strcspn(sub, "n")] = 0; // 删除末尾的换行符
int result = findSubstring(str, sub);
if (result == -1) {
printf("未找到子字符串.n");
} else {
printf("子字符串在主字符串的第 %d 个位置找到.n", result);
}
return 0;
}
// 在主字符串中查找子字符串
int findSubstring(char* str, char* sub) {
int len_str = strlen(str);
int len_sub = strlen(sub);
int i, j;
for (i = 0; i <= len_str - len_sub; i++) {
j = 0;
while (j < len_sub && str[i + j] == sub[j]) {
j++;
}
if (j == len_sub) return i; // 如果找到了子字符串,返回它在主字符串中的位置
}
return -1; // 如果找不到子字符串,返回-1
}
这个函数首先会获取两个字符串,然后它会遍历主字符串,并在每个位置检查是否可以找到
子字符串。如果找到了子字符串,函数将返回它在主字符串中的位置。如果找不到,函数将返回-1。
版权声明:本文标题:查找子串c语言 函数 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1705587441h491242.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论