C语言简单数组输出问题

问题遇到的现象和发生背景

img

遇到的现象和发生背景,请写出第一个错误信息

img

img


上图为第一个测试点

以下为我的代码

#include
#include
int main()
{
    char a[10];
    int i,num;
    gets(a);
    printf("%d\n",strlen(a));//输出数字的位数
    
    for(i=0;i<=strlen(a);i++)
    {
        printf("%c",a[i]);
        if(a[i+1]!='\0')
        printf(" ");
    }
    printf("\n");
    for(i=strlen(a)-1;i>=0;i--)
    {
        printf("%c",a[i]);
    }
}

运行结果及详细报错内容

devc++运行结果是对的,但是题目就是无法通过

我的解答思路和尝试过的方法,不写自己思路的,回答率下降 60%

我一开始以为是空格问题,但是发现问题应该不在这里。
谢谢您的解答!

i<=strlen(a)  // 这里 循环了一个数

改成 如下再试试

i<strlen(a)