阅读量:4
可以使用两层循环遍历数组,对每个元素进行比较,如果相同则计数器加一。
示例代码如下:
#include <stdio.h> int countDuplicates(int arr[], int size) { int count = 0; for (int i = 0; i < size - 1; i++) { for (int j = i + 1; j < size; j++) { if (arr[i] == arr[j]) { count++; break; } } } return count; } int main() { int arr[] = {1, 2, 3, 2, 4, 5, 4, 7, 1, 9}; int size = sizeof(arr) / sizeof(arr[0]); int duplicates = countDuplicates(arr, size); printf("Number of duplicate elements: %d\n", duplicates); return 0; }
上述代码中,countDuplicates
函数接受一个整型数组和数组大小作为参数,返回数组中相同元素的个数。函数内部使用两层循环遍历数组,对每个元素进行比较,如果发现相同元素,则计数器 count
加一。最后,在 main
函数中调用 countDuplicates
函数,并打印结果。
对于示例代码中的数组 {1, 2, 3, 2, 4, 5, 4, 7, 1, 9}
,输出结果为 3
,表示有 3
个重复的元素。