频道栏目
首页 > 资讯 > C语言 > 正文

判断任意数字是否是回文数

12-03-01        来源:[db:作者]  
收藏   我要投稿
void main() 

     long num,smallnum; 
     scanf("%d",&num); 
     smallnum = num; 
     int start=1; 
     int count=0; 
     do{ 
         start*=10; 
         count++; 
     }while(num%start!=num); 
    printf("本数是%d位\n",count); 
    int i; 
    int yes=1; 
    if(count%2==0){ 
        yes=0; 
    } 
    int loopcount = count/2; 
    int innercounter=1; 
    int bigsum=1; 
    int smallsum=1; 
    for(i=1;i<=loopcount;i++){ 
        smallsum=1; 
        for(innercounter=1;innercounter<=i;innercounter++){ 
            smallsum = smallsum*10; 
        } 
        bigsum=1; 
        for(innercounter=1;innercounter<=(count-i);innercounter++){ 
            bigsum = bigsum*10; 
        } 
        int small = smallnum%(smallnum/10); 
        smallnum =  smallnum/=10; 
 
        int big = num/bigsum; 
        num = num%bigsum; 
        if(big!=small){ 
            yes=0; 
            break; 
        } 
    } 
    if(yes==1){ 
         printf("此数是回文数."); 
    }else{ 
         printf("此数不是回文数."); 
    } 


摘自 张仁阳专栏
相关TAG标签
上一篇:a different object with the same identifier value was already associated with the session 深入分析
下一篇:同一段程序在java和C中的不同结果
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站