#include <stdio.h>
#include <string.h>
int maxsubstr(const char a[],const char **p)
{
int n=strlen(a);//存储字符串的长度
int i=0,j=0;
int cnt[n];//存储字符的相同个数
for(i;i<n;i++)
{
cnt[i]=1;
for(j=i+1;j<n;j++)
{
if(a[i]==a[j])
cnt[i]++;
}
printf("cnt[%d]=%d ",i,cnt[i]);
}
printf("\n");
for(j=1;j<n;j++)
{
if(cnt[0]<cnt[j])
{
int t=cnt[j];
cnt[j]=cnt[0];
cnt[0]=t;
*p=&a[j];
}
}
if(*p==NULL)
*p=&a[0];
return cnt[0];
}
int main()
{
const char* p=NULL;
int len=maxsubstr("weohiuweyowohifpw",&p);
printf("%d,%c\n",len,*p);
return 0;
}
返回一个字符串中重复出现的最长字串的长度及其开始字符
最新推荐文章于 2022-02-22 23:21:41 发布