当前位置:首页C语言 > 正文

C语言统计数组重复数个数

作者:野牛程序员:2023-07-07 06:22:13C语言阅读 2968

要统计数组中重复数字的个数,你可以使用以下的C语言代码实现:

#include <stdio.h>

// 函数用于统计数组中重复数字的个数
int countDuplicates(int arr[], int size) {
    int count = 0;

    // 遍历数组中的每个元素
    for (int i = 0; i < size - 1; i++) {
        // 检查当前元素是否已经统计过
        if (arr[i] == -1) {
            continue;
        }

        // 检查当前元素是否与后续元素重复
        for (int j = i + 1; j < size; j++) {
            if (arr[i] == arr[j]) {
                count++;
                arr[j] = -1; // 标记为已统计过的元素
            }
        }
    }

    return count;
}

int main() {
    int arr[] = {1, 2, 3, 2, 4, 5, 4, 6, 7, 8, 9, 8, 7};
    int size = sizeof(arr) / sizeof(arr[0]);

    int duplicateCount = countDuplicates(arr, size);

    printf("重复数字的个数:%d\\n", duplicateCount);

    return 0;
}

在上述代码中,countDuplicates 函数用于统计重复数字的个数。它使用了两个嵌套的循环,第一个循环从数组的第一个元素遍历到倒数第二个元素,第二个循环从当前元素的下一个元素遍历到数组的最后一个元素。如果发现重复的数字,计数器 count 增加,并且将后续出现的重复数字标记为 -1,以避免重复统计。

main 函数中,我们定义了一个示例数组 arr,然后通过 sizeof 运算符计算数组的大小,并将其作为参数传递给 countDuplicates 函数。最后,打印出重复数字的个数。

以上代码执行的结果将是:

重复数字的个数:4

注意,该代码只会统计数组中重复数字的个数,而不会给出具体的重复数字和其出现次数。如果需要得到更详细的统计信息,你可能需要使用其他的数据结构或算法。

野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
相关推荐

最新推荐

热门点击