判断字符是否为回文

Code
#include <iostream.h>
#include 
<stdio.h>
#include 
<assert.h>
bool IsSymmetry(const char* p)
    {
        assert(p
!=NULL);//判断指针是否为空
        const char* q=p;//指向常字符的指针    
        int len=0;
        
while(*q++!='\0')
        {
            len
++;
        }        
        
bool bSign=true;
        q
=p+len-1;
        
if (0<len)
        {
            
for (int i=0;i<len/2;i++)
            {
                
if(*p++!=*q--){ bSign=false;break;};
            }
        }
        
if(bSign==true)
        {
            printf(
"Yes!\n");
        }
        
else
        {
            printf(
"No!\n");
        }
        
return bSign;
    }



void main()
{
    
char *str="abcdeffedcba";
    
    cout
<<IsSymmetry(str)<<endl;
}
posted @ 2009-05-12 16:46  jinweida  阅读(228)  评论(0编辑  收藏  举报