当前位置: 代码迷 >> C语言 >> 判断回文
  详细解决方案

判断回文

热度:494   发布时间:2004-06-17 20:27:00.0
判断回文
就是数字的第一位和最后一位相同,第二位和倒数第二位相同,第3位和倒数第3位相同.......

比如12321,输入yes 234,输入no

搜索更多相关的解决方案: 回文  判断  

----------------解决方案--------------------------------------------------------

用字符串存储数字比较好判断


----------------解决方案--------------------------------------------------------
以下是引用jzh2004在2004-06-17 21:23:21的发言:

用字符串存储数字比较好判断

这个我知道,但是如果不用字符串类型怎么做呢
----------------解决方案--------------------------------------------------------

对整数求余,然后将得出的数字放入队列中,比较队列头尾,比较一次后(前)移一次


----------------解决方案--------------------------------------------------------
以下是引用jzh2004在2004-06-17 21:23:21的发言:

用字符串存储数字比较好判断

我觉得用一个函数来判断最好了不知对不对请各位指证

bool symm(loog n) //定义函数的类型与反回值 { loog i,m; i=n,m=0; while(i) { m=m*10+i%10; //构造一个新数m,i%10取个位数 i=i/10; //取十位数 } return(m==n); //如果构造的新数m等于n的话就是回文数了,就反回它。 }


----------------解决方案--------------------------------------------------------

#include<stdio.h> huiwen(long n) { long s=0,m; m=n; while(m) { s=s*10+m%10; m=m/10; } if(s==n) return 1; else return 0; } main() { long n; printf("\nenter n:"); scanf("%ld",&n); if(huiwen(n)) printf("yes\n"); else printf("no\n"); }


----------------解决方案--------------------------------------------------------
以下是引用darrenyang在2004-06-22 10:13:50的发言:

我觉得用一个函数来判断最好了不知对不对请各位指证

bool symm(loog n) //定义函数的类型与反回值 { loog i,m; i=n,m=0; while(i) { m=m*10+i%10; //构造一个新数m,i%10取个位数 i=i/10; //取十位数 } return(m==n); //如果构造的新数m等于n的话就是回文数了,就反回它。 }

OK!


----------------解决方案--------------------------------------------------------
  相关解决方案