利用函数实现查找一个数在数组中出现的次数
时间: 2023-04-13 19:03:44 浏览: 144
可以定义一个函数,接收两个参数:一个数组和一个数。函数内部遍历数组,统计该数在数组中出现的次数,最后返回次数即可。
具体实现如下:
```python
def count_num(arr, num):
count =
for i in arr:
if i == num:
count += 1
return count
```
调用该函数时,传入需要查找的数组和数即可:
```python
arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
num = 5
result = count_num(arr, num)
print(result) # 输出:1
```
以上代码中,数组 `arr` 中数值为 `5` 的元素只出现了一次,因此函数返回值为 `1`。
相关问题
用c语言查找数组中出现次数最多的数不使用循环的代码
在 C 语言中,要找出数组中出现次数最多的元素而不用循环,可以利用哈希表(如标准库中的`<string.h>`中的`strchr()`函数)的思想,但这通常需要额外的空间开销,并且假设数组元素是整数并且范围较小,能够放入`int`类型的哈希表。这是一种非典型的方法,因为传统上查找最常出现的元素会涉及遍历数组。这里提供一个简单的示例,注意这个方法效率不高,适用于特定场景:
```c
#include <stdio.h>
#include <string.h>
// 假设数组元素为整数,且范围不大于 'size'
#define ARRAY_SIZE 100
int find_most_frequent(int arr[], int size) {
// 创建一个大小等于数组元素范围的最大值的哈希表
int hash[ARRAY_SIZE] = {0};
for (int i = 0; i < size; ++i)
hash[arr[i]]++;
// 找到最大计数值,也就是出现次数最多的元素
int max_count = 0, most_frequent = arr[0];
for (int i = 0; i < ARRAY_SIZE; ++i) {
if (hash[i] > max_count)
max_count = hash[i], most_frequent = i;
}
return most_frequent;
}
int main() {
int arr[] = {1, 2, 3, 4, 5, 5, 6, 7, 8, 9, 9, 9};
int size = sizeof(arr) / sizeof(arr[0]);
int most_common = find_most_frequent(arr, size);
printf("出现次数最多的数是 %d\n", most_common);
return 0;
}
```
用c语言,利用随机函数,产生10个随机整数并存入数组,从键盘上输入一个整数,查找数组中是否有该数,有几个
在C语言中,你可以使用`<stdlib.h>`中的`rand()`和`srand()`函数来生成随机数,并配合数组来实现这个功能。首先,你需要初始化随机数种子,然后生成随机整数并存储到数组中。接着,从用户处获取输入的整数,遍历数组查找是否存在该数以及次数。下面是一个简单的示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h> // 需要用到time()函数作为srand()的种子
#define SIZE 10 // 定义数组大小
int arr[SIZE]; // 创建一个整数数组
int found_count = 0;
// 初始化随机数种子,一般用当前时间
void init_random() {
srand(time(0));
}
// 生成并存储随机数到数组
void generate_random_numbers() {
for (int i = 0; i < SIZE; ++i) {
arr[i] = rand() % SIZE; // 生成 [0, SIZE-1] 范围内的随机数
}
}
// 查找并计数指定数值在数组中的个数
int search_number(int target) {
for (int i = 0; i < SIZE; ++i) {
if (arr[i] == target) {
found_count++;
}
}
return found_count;
}
int main() {
init_random(); // 初始化随机数生成器
generate_random_numbers(); // 生成随机数组
int input;
printf("请输入一个整数: ");
scanf("%d", &input);
int result = search_number(input);
if (result > 0) {
printf("找到 %d 次.\n", result);
} else {
printf("没找到该数.\n");
}
return 0;
}
```
阅读全文
相关推荐














