猴子分桃子问题!- -| 回首页 | 2005年索引 | - -求100以内素数!(共用2种方法)!

判断一个正整数是否是回文数!

                                      

一个正整数,判断是否是回文数!

#include <string.h>
#include <iostream.h>
#define Maxl 10 //整数最长为MaxL

int huiwen(char *s) //判断字符串是否是回文  1-是,0-不是
{char s1[Maxl+1];
 int i,j;
 j=strlen(s);
 j--;
 for(i=0;j>=0;i++,j--)
      s1[i]=s[j];
 s1[i]='\0';
 return (strcmp(s1,s)==0?1:0);
}

void num_to_str(int num,char *s)  //将num转化为字符串s
{char s1[Maxl+1];
 int i,k=0;
 while(num)
      {i=num%10;
       num=num/10;
       s1[k++]=i+48;
      }
 i=0;
 while(k>=0)
      s[i++]=s1[k--];
 s[i]='\0';
}

void main()
{int num,i;
 char s[Maxl+1];
 cout<<"输入一个正整数"<<endl;
 cin>>num;
 num_to_str(num,s);
 i=huiwen(s);
 if(i) cout<<"是回文数"<<endl;
 else  cout<<"不是回文数"<<endl;
}

【作者: 刘加开】【访问统计:】【2005年03月16日 星期三 16:50】【 加入博采】【打印

Trackback

你可以使用这个链接引用该篇文章 http://publishblog.blogchina.com/blog/tb.b?diaryID=951229

回复

- 评论人:secball   2005-11-13 23:44:28   

while(a〉0)
{
b=a%10;
c[i++]=b;
a=a/10;
}

然后再判断数组c是否头尾相等,当然数的个数偶数时跟奇数时有些小差别,但写出来应该给你的简洁吧。

评论内容: