我怎样才能检查数组中的相同值?

时间:2015-01-18 16:20:35

标签: c arrays

我想检查数组中相同的int值!
例如,

int a1 = arc4random()%9 +1;
int a2 = arc4random()%9 +1;
int a3 = arc4random()%9 +1;
int a4 = arc4random()%9 +1;
int a5 = arc4random()%9 +1;
int array[5] ={a1,a2,a3,a4,a5};

现在!这儿存在一个问题! 数组中的一些int值!那么如何检查数组中的相同值? 具体来说,

a[0] = {1}
a[1] = {3}
a[2] = {6}
a[3] = {3}
a[4] = {3}

如果arch4random使这些值。我怎样才能检查相同的值? (a [2] = a [3] = a [4])?

2 个答案:

答案 0 :(得分:1)

for (int i = 0; i < lenarray; i++) {
  for (int j = i; j < lenarray; j++) {
    if (array[i] == array[j]) {
      printf("Same value\n");
    }
  }
}

或者我错过了什么?

答案 1 :(得分:1)

只需使用for循环。例如。找到你可能会做的array[0]重复:

int x = array[0];
int repetitions = 0;
for (int i = 0; i < 5; i++) {
    int y = array[i];
    if (x == y) {
        repetitions++;
    }
} 

printf("array[0] = %i and occurrs %i times.",x, repetitions+1);