找出多个字符串中的最大公共子字符串,求指导
int main()
{
int n = 0;
printf("请输入字符串的个数");
scanf("%d",&n);
char a[n][100];
for (int i=0; i<n; i++) {
printf("请输入第%d个字符串",i+1);
scanf("%s",a[i]);
}
int i,min;
int maxSize = 100;
for ( i= 0; i<n; i++) {
int size = (int)strlen(a[i]);
if (size < maxSize) {
maxSize = size;
min = i;
}
}
char b[100];
strcpy(b, a[0]);
strcpy(a[0], a[i]);
strcpy(a[i], b);
return 0;
}
我的想法是,1.先将用户输入的字符串条数和具体字符串赋值于一个二维字符数组中
2.找出这个二维字符数组中最小长度的字符数组,然后将这个数组替换到最前面来
3.想通过第一个数组和每个数组间的字符遍历来统计出最大到公共字符串(也是向第二步那样循环替换)
4.最后输出这个字符串。
第三步我已经崩溃,想请教大家应该怎么写。