一个pta上的问题,求解答

问题遇到的现象和发生背景 为什么在第十行那里会出现一个小红点呢?
问题相关代码,请勿粘贴截图
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int pre(int n);
main()
{
    int i,j,k,l;
    char n[1001],m[1001],s[1001];
    int A,B,C;
    scanf("%s",n);
    for(i=0;i<10;i++)
    {
        A=atoi(n);
        l=strlen(n)-1;
        for(j=0;j<strlen(n);j++)
        {
            m[l]=n[j];
            l--;
        }
        B=atoi(m);
        C=A+B;
        sprintf(s,"%d",C);
        if(pre(C))
        {
            printf("%s + %s = %s\n",n,m,s);
            printf("%s is a palindromic number.\n",s);
            break;
        }
        else
        {
            printf("%s + %s = %s\n",n,m,s);
           sprintf(n,"%d",C);//数字转字符串
        }
    }
    if(i>=10)
        printf("Not found in 10 iterations.\n");
}
int pre(int n)
{
    int i,j=0,a[1001],flag=1;
    if(n==0)
        return 1;
    else
    while(n!=0)
    {
        a[j]=n%10;
        n=n/10;
        j++;
    }
    for(i=0;i<j/2;i++)
    {
        if(a[i]!=a[j-1])
        {flag=0;
        break;}
        j--;
    }
    if(flag==1)
        return 1;
    else
        return 0;
}

运行结果及报错内容

img

我的解答思路和尝试过的方法
我想要达到的结果

修改见注释,供参考:

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int pre(int n);
int main()
{
    int i, j, k, l;
    char n[1001], m[1001], s[1001];
    int A, B, C;
    scanf("%s", n);
    for (i = 0; i < 10; i++)
    {
        A = atoi(n);
        l = strlen(n) - 1;
        for (j = 0; j < strlen(n); j++)
        {
            m[l] = n[j];
            l--;
        }
        m[strlen(n)] = '\0';  //修改
        B = atoi(m);
        C = A + B;
        sprintf(s, "%d", C);
        if (pre(C))
        {
            printf("%s + %s = %s\n", n, m, s);
            printf("%s is a palindromic number.\n", s);
            break;
        }
        else
        {
            printf("%s + %s = %s\n", n, m, s);
            sprintf(n, "%d", C);//数字转字符串
        }
    }
    if (i >= 10)
        printf("Not found in 10 iterations.\n");
    return 0;
}
int pre(int n)
{
    int i, j = 0, a[1001], flag = 1;
    if (n == 0)
        return 1;
    else
        while (n != 0)
        {
            a[j] = n % 10;
            n = n / 10;
            j++;
        }
    for (i = 0; i < j / 2; i++)
    {
        if (a[i] != a[j - 1])
        {
            flag = 0;
            break;
        }
        j--;
    }
    if (flag == 1)
        return 1;
    else
        return 0;
}