黑马程序员技术交流社区

标题: 开始懂了,现在又忘了,哪位大神给讲解一下! [打印本页]

作者: ⒈苆都s.兲憶    时间: 2015-6-6 23:43
标题: 开始懂了,现在又忘了,哪位大神给讲解一下!
int main(int argc, const char * argv[]) {
    // 有1000000个数,每个数取值范围是0-999999,找出其中重复的数。
   
    int a[COUNT] = {0};

    for (int i = 0;i < COUNT;i++)
    {
        int number = arc4random_uniform(COUNT)%COUNT;
        
        //把随机数作为下标,值出现作为次数
   
        a[number-1]++;
   
    }
    //输出重复的数字以及重复的次数
   
    for (int i = 0;i  < COUNT;i++)
    {
        if (a[i] > 1)
        {
        
            printf("%d重复的次数是%d\n",i+1,a[i]);
        
        }
   
    }
   
    return 0;
}

作者: 晗修    时间: 2015-6-7 02:07
为什么要-1  .。。我也没明白 不是a[number]++就好了么 又不是1~1000000




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2