c语言判断整型数组元素有无重复数字
时间: 2024-12-22 11:15:06 浏览: 6
在C语言中,判断整型数组元素是否有重复数字可以采用多种方法,例如使用哈希表、排序后查找重复等。这里提供一种简单直观的方法,即遍历数组并使用布尔值标记已经遇到过的数值。
```c
#include <stdio.h>
#include <stdbool.h>
bool hasDuplicates(int arr[], int size) {
bool isDuplicate[10000] = {false}; // 假设整数范围在-10000到10000之间,可根据实际情况调整大小
for (int i = 0; i < size; i++) {
if (isDuplicate[arr[i]]) {
return true;
}
isDuplicate[arr[i]] = true;
}
return false;
}
int main() {
int array[] = {1, 2, 3, 4, 5};
int size = sizeof(array) / sizeof(array[0]);
if (hasDuplicates(array, size)) {
printf("数组中有重复的数字\n");
} else {
printf("数组中没有重复的数字\n");
}
return 0;
}
```
这个函数`hasDuplicates`会检查给定数组中的每个元素是否已经在`isDuplicate`数组中标记过。如果遇到重复的元素,就返回`true`,表示存在重复;如果没有找到重复,循环结束后返回`false`。
阅读全文