#include<stdio.h>
#include<string.h>
int main()
{
int c, i, j, n, k = 1;
char m, a[40];
gets(a);scanf("%d",c);
while ( k <= c)
{scanf("%c%d",&m,&n);
if (m == 'R')
{
for (j = 1; j <= n; j++)
for (i = 0; i < strlen(a); i++)
{
a[0] = a[strlen(a)];
a[i + 1] = a[i];
}
puts(a);
}
else
{
for (j = 1; j <= n; j++)
for (i = 0; i < (strlen(a) - 1); i++)
{
a[strlen(a)] = a[0];
a[i] = a[i + 1];
}
puts(a);
}
k++;
}
return 0;
}请问这个代码错在哪里?segmentation fault
strlen测试的字符串长度不是不包括结束符'\0'吗