Помогите исправить ошибку в конце программы (язык Си). "Stack around the variable 'a' was corrupted."
поиск подстроки в строке 1000 раз.
#include
#include
#include
#include
#include
int main(void)
{
setlocale(LC_ALL, "Russian");
char a[50];
int i,i1;
int rp;
int k;
char pstr[4];
srand(time(NULL));
printf("Случайно сгенерированная строка: \n");
printf("\n______________________________________________\n");
for(i=0;i<50;i++)
{
k=1+rand()%;
a=(char)(96+k);
printf("%c",a);
}
printf("\n______________________________________________\n");
printf("\nВведите подстроку для поиска из 3 символов :");
gets(pstr);
printf("%s",pstr);
printf("\n______________________________________________\n");
printf("Резудьтат поиска: \n");
//printf("\n%s\n",strstr(a,pstr));
if(strstr(a,pstr)==NULL)
{
for(rp=0,i1=1;rp<=999;rp++,i1++)
{
k=0;
strcpy(a," ");
for(i=0;i<=50;i++)
{
k=1+rand()%;
a=(char)(96+k);
}
a[51]='\0';
printf("%d--%s\n",i1,strstr(a,pstr));
if(strstr(a,pstr)!=NULL)
{printf("\nСовпадение найдено\n");break;}
}
}
system("pause");
return 0;
}