检查数中是否存在重复出现的数字(bool类型)

博客参考《C语言程序设计————现代方法》

题目:检查数中是否存在重复出现的数字

思路:创建一个长度为10的bool型数组。采用映射(桶)的思想。

程序:

//c程序:检查数,是否有出现多于一次的数字

#include
#include

int main(void)
{
    bool dig_seen[10]={false};
    int i;
    long n;

    scanf("%ld",&n);
    while (n>0)
    {
        i=n%10;
        if(dig_seen[i])
            break;
        dig_seen[i]=true;
        n/=10;
    }
    
    if(n>0)
        printf("Repeated digit\n");
    else
        printf("No repeated digit\n");
    

    return 0;
}

你可能感兴趣的:(c/c++)