| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1534 人关注过本帖, 1 人收藏
标题:一道面试题(有点意思)
只看楼主 加入收藏
easyknow
Rank: 2
来 自:北京
等 级:论坛游民
帖 子:3
专家分:20
注 册:2012-2-3
收藏
得分:0 
将前人的代码改动一下
程序代码:
int isPalindrome( int number )
{
    int temp=0;
    for( ; number!=0; number /= 10 ){
        if( temp==number ){
            return 1;
        }
        temp *= 10;
        temp += number%10;
    }
    return  0;
}
收到的鲜花
  • beyondyf2012-02-03 18:54 送鲜花  5朵   附言:好想法,值得鼓励!
2012-02-03 18:11
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
收藏
得分:0 
很有意思的改进,进一步改进
程序代码:
int isPalindrome( int number )

 {
     int temp;
     for(temp = 0; number > temp; number /= 10 )
    {
         temp *= 10;
         temp += number%10;
     }
     return  number == temp;

 }
收到的鲜花
  • 爱德华2012-02-04 12:00 送鲜花  5朵   附言:我很赞同!

重剑无锋,大巧不工
2012-02-03 18:27
itma
Rank: 4
等 级:业余侠客
帖 子:105
专家分:266
注 册:2010-2-8
收藏
得分:0 
以下是引用beyondyf在2012-2-3 18:27:55的发言:

很有意思的改进,进一步改进
int isPalindrome( int number )
 {
     int temp;
     for(temp = 0; number > temp; number /= 10 )
    {
         temp *= 10;
         temp += number%10;
     }
     return  number == temp;
 }

这个给力。
2012-02-03 18:34
liangwu2011
Rank: 1
等 级:新手上路
帖 子:6
专家分:6
注 册:2012-2-4
收藏
得分:0 
不错不错
2012-02-04 10:26
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:0 
程序代码:
int isPalindrome( int number )
{
     int temp;
     for(temp = 0; number > temp; number /= 10 )
    {
         temp *= 10;
         temp += number%10;
     }
     return  number == temp;
}
number > temp这个判断条件把龙眼睛都点爆了啊

梅尚程荀
马谭杨奚







                                                       
2012-02-04 10:47
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
收藏
得分:0 
呵呵,这算是众人智慧的结晶吧,我借鉴了easyknow的思想。
一人智短,二人智长。一个人的思维往往容易陷入一种固定模式。和大家相互交流可以学习别人的思维方法,开拓自己的思路。这就是我来论坛的初衷

重剑无锋,大巧不工
2012-02-04 11:13
C_596322153
Rank: 6Rank: 6
来 自:徽州
等 级:侠之大者
帖 子:182
专家分:466
注 册:2012-1-10
收藏
得分:0 
   int x;
scanf("%d",&x);
isPalindrome(x);
if(x==0)
  printf("shi  hui shu\n");
else
  printf("bu shi hui shu\n");

版主可以这样调用吗
2012-02-04 13:35
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
收藏
得分:0 
程序代码:
    int x;
    scanf("%d",&x);
    if(isPalindrome(x))
        printf("shi  hui shu\n");
    else
        printf("bu shi hui shu\n");

 

重剑无锋,大巧不工
2012-02-04 13:51
lr982330245
Rank: 2
等 级:论坛游民
帖 子:12
专家分:16
注 册:2012-1-29
收藏
得分:0 
根本不需要判断位数
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
void fun(char *s)
{
    int len,a,i;
    len=strlen(s);
    a=len/2;
    for(i=0;i<a;i++)
    {
        if(*(s+i)==*(s+len-i-1))
          continue;
        else
        {
            printf("The digital is not a huishu!\n");
            exit(0);
        }
    }
    printf("The digital is a huishu!\n");
}
void main()
{
    char *s;
    printf("Please input a digital:\n");
    gets(s);
    fun(s);
}

[ 本帖最后由 lr982330245 于 2012-2-4 14:38 编辑 ]
2012-02-04 14:27
C_596322153
Rank: 6Rank: 6
来 自:徽州
等 级:侠之大者
帖 子:182
专家分:466
注 册:2012-1-10
收藏
得分:0 
明白了     万分感谢
2012-02-04 14:28
快速回复:一道面试题(有点意思)
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.028765 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved