c语言输入一串数字,统计重复数字的重复次数
时间: 2024-11-17 17:29:10 浏览: 7
华为OD机试题C语言版
在C语言中,你可以通过遍历数组并使用哈希表(如`unordered_map`或`std::map`)来统计一串数字中每个数字的重复次数。下面是一个简单的示例,假设我们有一个整数数组:
```c
#include <stdio.h>
#include <stdlib.h>
#include <unordered_map>
int main() {
int arr[] = {1, 2, 3, 4, 5, 3, 2, 1, 6};
int n = sizeof(arr) / sizeof(arr[0]);
// 创建一个无序映射,键是数字,值是该数字的计数
std::unordered_map<int, int> countMap;
for (int i = 0; i < n; ++i) {
// 如果数字已经在映射中,增加计数;否则添加新的条目,计数为1
countMap[arr[i]] += 1;
}
// 遍历映射并打印结果
for (const auto& pair : countMap) {
printf("数字 %d 的重复次数: %d\n", pair.first, pair.second);
}
return 0;
}
```
在这个例子中,程序会输出每个重复数字及其对应的计数。如果你想要用户输入一串数字,你需要先读取用户的输入,并稍作修改上述代码。
阅读全文