判断一个数是否含有相同的数字

 

输入:一个非负整数。

输出:如果有相同数字,则输出true ,否则输出 false。

 

例如:输入 889 ,输出 true

        输入 123  ,输出 false

 

C++:

//判断一个数是否含有相同的数字 
bool has_same_digit(int num)
{
    bool emerge[10] = {false};    //用10个元素的数组代表 0 , 1, ,2 ... 9出现的标志。初始全部为false。
                                 //例如若8出现了,则 emerge[8] 就赋值为 true 。
    
    do{
        int d = num%10;         //取出当前位的数字 
        
        
        if(digit[d]) return true; 
        
        digit[d] = true;
        
    
    }while(num/=10);
    
    return false; 

}

 

posted @ 2017-03-24 22:37  lulipro  阅读(926)  评论(0编辑  收藏  举报