周期串问题,没有变成结果

周期串问题,没有变成结果

问题描述:

编程小白求解

这个是问题

这个是我写的代码

#include<stdio.h>
#include<string.h>
int main()
{
	int j=0,i;
	char a[90],b[80];
	scanf("%s",a);
	for(i=1;i<=strlen(a);i++)
	{
		sprintf(b,"%s",a[i]);
		j++;
		if(strchr(b,a[i])==NULL)
		{
			continue;
		}
		else
		{
			printf("%d",j);
			break;
		}
	}
	return 0;
}

供参考:

#include<stdio.h>
#include<string.h>
int main()
{
	int j=0;
	char a[80],*b;
	scanf("%s",a);
        b= a;
        while(b=strchr(b,a[0])){
              b++;
              j++;
        }
        printf("%d\n",strlen(a)/j);
        
	return 0;
}