c语言输入两个字符的连续公共子串
时间: 2023-10-23 07:03:36 浏览: 97
要输入两个字符的连续公共子串,我们可以使用C语言来实现。首先,我们需要定义两个字符串变量input1和input2用于接收输入的两个字符串。然后,我们可以先遍历其中一个字符串,记录下当前位置开始的子串长度,同时检查另一个字符串是否包含该子串。如果包含,则继续比较后续字符,直到遇到不匹配或遍历完其中一个字符串为止。最后,我们可以打印出找到的连续公共子串。下面是一个示例代码:
```c
#include <stdio.h>
#include <string.h>
#define MAX_LENGTH 100
int main() {
char input1[MAX_LENGTH];
char input2[MAX_LENGTH];
int maxLength = 0;
int startIdx = -1;
printf("请输入第一个字符串:");
scanf("%s", input1);
printf("请输入第二个字符串:");
scanf("%s", input2);
int len1 = strlen(input1);
int len2 = strlen(input2);
for (int i = 0; i < len1; i++) {
int length = 0;
int idx1 = i;
int idx2 = 0;
while(idx1 < len1 && idx2 < len2 && input1[idx1] == input2[idx2]) {
length++;
idx1++;
idx2++;
}
if (length > maxLength) {
maxLength = length;
startIdx = i;
}
}
if (maxLength > 0) {
printf("连续公共子串为:");
for (int i = startIdx; i < startIdx + maxLength; i++) {
printf("%c", input1[i]);
}
printf("\n");
} else {
printf("没有连续公共子串。\n");
}
return 0;
}
```
你可以运行上述代码,并按照提示输入两个字符串,在计算完成后会输出连续公共子串。如果没有连续公共子串,则会显示相应的提示信息。
阅读全文