C语言判断回文字符怎么写

判断回文字符怎么写T.T

img


用这个程序判断是否为回文字符
写的感觉没问题,但是运行出错,求原因
(程序思路借鉴了网上的)

length+1-i
改为
length-1-i

字符串的长度设置短了,10个字符的字符串,应该设置长度为11。

程序没报错啊!运行错误截图看下!


#include <stdio.h>
#include <string.h>

int main()
{
    char str[100];
    int i, j, len, flag = 1;
    
    printf("请输入一个字符串:");
    scanf("%s", str);
    
    len = strlen(str);
    
    for (i = 0, j = len - 1; i < len / 2; i++, j--)
    {
        if (str[i] != str[j])
        {
            flag = 0;
            break;
        }
    }
    
    if (flag)
        printf("%s是回文字符\n", str);
    else
        printf("%s不是回文字符\n", str);
    
    return 0;
}