用c语言实现输入两个字符串,并求出两个字符串的最长公共子串
时间: 2023-02-21 21:23:43 浏览: 75
下面是用 C 语言实现求两个字符串的最长公共子串的代码:
```
#include<stdio.h>
#include<string.h>
#define MAX_LEN 100
int main(){
char str1[MAX_LEN], str2[MAX_LEN];
int i, j, k, len1, len2, maxLen, end;
int c[MAX_LEN][MAX_LEN];
printf("请输入第一个字符串:");
scanf("%s", str1);
printf("请输入第二个字符串:");
scanf("%s", str2);
len1 = strlen(str1);
len2 = strlen(str2);
for (i = 0; i < len1; i++)
for (j = 0; j < len2; j++){
if (str1[i] == str2[j]){
if (i == 0 || j == 0)
c[i][j] = 1;
else
c[i][j] = c[i - 1][j - 1] + 1;
if (c[i][j] > maxLen){
maxLen = c[i][j];
end = i;
}
}
else
c[i][j] = 0;
}
printf("最长公共子串是:");
for (k = end - maxLen + 1; k <= end; k++)
printf("%c", str1[k]);
printf("\n");
return 0;
}
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)