求用函数嵌套判断一个整数是否是回文
把整数“翻转”过来,和袁术相同的就是回文整数int isPalindrome(int x)
{
int tmp=x,res=0;
if(x<0)
{
return false;
}
while(tmp)
{
res=res*10+tmp%10;
tmp=tmp/10;
}
return x==res;
}
麻烦把思路也帮忙写一下吧,谢谢
http://blog.csdn.net/slj_win/article/details/7204398 判断一个整数不是字符串
思路是这样的,剩下的自己转换下。 非常感谢楼上的,但是我要的是判断一个整数是不是回文字,不是字符串。 wangxiaojia_770 发表于 2017-3-28 00:03
非常感谢楼上的,但是我要的是判断一个整数是不是回文字,不是字符串。
你的意思是你会判断一个字符串是不是回文对吧?
如果是这样,那就先把整数变成字符串不就行了?
比如这个整数是num = 12321
你可以把它先变成字符串啊,这样:
the_str = str(num)
这不,the_str的值就是一个字符串了,the_str = "12321"
从这里开始,你就可以用你会的判断字符串的方式去判断它了 用%10和/10{:10_256:}{:10_256:} #include<stdio.h>
main()
{
int isPalindrome(int x);
int a, n;
printf("请输入一个整数\n");
scanf("%d\n",&n);
a=isPalindrome(n);
if(n==a)
printf("这个整数是回文\n");
else
printf("这个整数不是回文\n");
}
int isPalindrome(int x)
{
int tmp=x,res=0;
if(x<0)
{
printf("输入错误\n");
}
while(tmp)
{
res=res*10+tmp%10;
tmp=tmp/10;
}
return res;
} 上面的程序哪里出错了呢?
找到了,是scanf()那条语句出问题了。
页:
[1]