输入一个字符串,判断它是不是回文 C语言

来源:百度知道 编辑:UC知道 时间:2024/06/10 15:55:04
初学者
请写简单些

用两头凑法,找到字符串的最后一个字符,与第一个字符比较。然后各自向中间移动,逐个比较。如果比较中出现不同,则不是回文。当二者相遇时,一直都相同,则字符串为回文。

参考代码如下:

int huiwen(char *s)
{
    char *p = s;
    while(*p) p++;//找到结束符\0的位置。
    p--;//\0的前一个字符,就是字符串的最后一个字符。
    while(s<p)
    {
        if(*s != *p) return 0;//发现不同,不是回文。
        s++;
        p--;//二者向中间移动。
    }
    return 1;//到相遇后一直相同,是回文。
}

int main()
{
    char s[100];
    scanf("%s",s);//输入字符串。
    if(huiwen(s))//判断是否回文并输出结果。
       &n