/**
 * 【程序2】
 * 题目:本题要求编写函数,判断给定的一串字符是否为"回文"。所谓"回文"是
 * 指顺读和倒读都一样的字符串。如"XYZYX"和"xyzzyx"都是回文。
 * 
 */

#include<stdio.h>
void main()
{
    int len, half, count;
    int i;
    char s[250];
    printf("请输入回文字符串\n");
    scanf("%s", s);
    printf("输入的字符串为:%s\n", s);
    for(i=0;s[i]!='\0';i++) 
    len += 1;
    half = len/2;
    for(i=0;i<half;i++)
    {
        if(s[i]==s[len-i-1]) count +=1;
    }
    if(count==half) 
    {
        printf("Yes");
    }else
    {
        printf("No");
    }
}

/**
 * 想法:二分法。
 * 比较左半区和右半区字符相同个数。
 * 若有一半字符都相同,那么一定是回文字符串。
 * 
 */