z530650681 2014-08-03 04:16 采纳率: 0%
浏览 1810

判断一个INT数字是否回文?

我个人认为下面的逻辑是没有问题的,可能在某一个参数上面出现了问题,或者是数值间的转换,但我没有办法找出来。
#include
#include

int main()
{
int number,judge,floor,ceil,a; //若为回文a返回1,否则返回0,
float length=1; //length为判断数字位数

scanf("%d",&number);

judge=number;

while((judge=judge/10)>10) length++;

do
{
    ceil=(int)number/pow(10.0,length);
    floor=(int)number%10;

    number=number%pow(10.0,length)/10;

    if(ceil==floor) a=5;

    length-=2;

    if(length==1||length==0) break;
    printf("%d %d %d %d ",ceil,floor,number,a);

}
while(a);

printf("%d",a);

}

CSDN移动问答

  • 写回答

1条回答

  • icewolf13 2014-08-04 02:52
    关注

    if(ceil==floor) a=1;
    else a = 0;

    length-=2;

    if(length<=0) break;

    评论

报告相同问题?

悬赏问题

  • ¥20 beats蓝牙耳机怎么查看日志
  • ¥15 Fluent齿轮搅油
  • ¥15 八爪鱼爬数据为什么自己停了
  • ¥15 交替优化波束形成和ris反射角使保密速率最大化
  • ¥15 树莓派与pix飞控通信
  • ¥15 自动转发微信群信息到另外一个微信群
  • ¥15 outlook无法配置成功
  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏