📌  相关文章
📜  C程序来计算数组中每个元素的频率(1)

📅  最后修改于: 2023-12-03 15:14:26.404000             🧑  作者: Mango

C程序计算数组中每个元素的频率

本文介绍如何使用C语言编写一个程序来计算一个整数数组中每个元素的频率。程序将遍历数组并为每个元素计数,最后打印出每个元素及其对应的频率。

#include <stdio.h>

// 定义数组长度
#define SIZE 10

// 计算数组中每个元素的频率
void calculateFrequency(int arr[], int len) {
    // 定义一个辅助数组来存储元素及其频率
    int frequency[SIZE][2];
    int count = 0;

    // 初始化辅助数组
    for (int i = 0; i < SIZE; i++) {
        frequency[i][0] = -1;
        frequency[i][1] = 0;
    }

    // 遍历数组并计数
    for (int i = 0; i < len; i++) {
        int element = arr[i];
        int found = 0;

        // 查询辅助数组中是否已经存在该元素
        for (int j = 0; j < count; j++) {
            if (frequency[j][0] == element) {
                frequency[j][1]++;
                found = 1;
                break;
            }
        }

        // 若辅助数组中不存在该元素,则添加进去
        if (!found) {
            frequency[count][0] = element;
            frequency[count][1] = 1;
            count++;
        }
    }

    // 打印每个元素及其频率
    printf("元素\t频率\n");
    for (int i = 0; i < count; i++) {
        printf("%d\t%d\n", frequency[i][0], frequency[i][1]);
    }
}

int main() {
    // 定义一个整数数组
    int arr[] = {2, 4, 2, 6, 8, 4, 6, 4, 4, 2};

    // 计算数组中每个元素的频率
    calculateFrequency(arr, SIZE);

    return 0;
}

以上代码演示了一个简单的计算整数数组中每个元素频率的示例。它定义了一个 calculateFrequency 函数用于计算数组中每个元素的频率。程序首先创建一个辅助数组 frequency 来存储每个元素及其频率。然后,它遍历给定的数组并计数每个元素的出现次数。最后,程序打印出每个元素及其频率。

输出结果为:

元素   频率
2       3
4       4
6       2
8       1

这表明数组中的元素2出现了3次,元素4出现了4次,元素6出现了2次,元素8出现了1次。

希望这个计算数组中每个元素频率的C程序能帮助到你。