C语言搜查数组某个数字出现次数
时间: 2024-09-20 15:14:23 浏览: 40
在C语言中,你可以使用嵌套循环或者更高效的数据结构如哈希表(如`std::unordered_map`,如果头文件包含的话)来计算数组中某个数字出现的次数。这里我将提供一种基本的线性时间复杂度O(n)的解决方案,即使用循环:
```c
#include <stdio.h>
// 函数来计算数组中目标值出现的次数
int count_occurrences(int arr[], int size, int target) {
int count = 0;
for (int i = 0; i < size; i++) {
if (arr[i] == target) {
count++;
}
}
return count;
}
int main() {
int arr[] = {1, 2, 3, 4, 5, 2, 6, 7, 2}; // 示例数组
int target = 2; // 要查找的目标数
int array_size = sizeof(arr) / sizeof(arr[0]); // 获取数组长度
int occurrences = count_occurrences(arr, array_size, target);
printf("Number %d appears %d times in the array.\n", target, occurrences);
return 0;
}
```
这个程序会遍历整个数组,每遇到目标值就增加计数器。当遍历结束后,返回的就是目标数值在数组中的出现次数。
阅读全文