2301_81770925 2023-12-09 11:09 采纳率: 0%
浏览 2

刚学c语言不会做,能不能教一下怎么办

本题要求统计一个整型序列中出现次数最多的整数及其出现次数。

输入格式:
输入在一行中给出序列中整数个数N(0<N≤1000),以及N个整数。数字间以空格分隔。

输出格式:
在一行中输出出现次数最多的整数及其出现次数,数字间以空格分隔。题目保证这样的数字是唯一的。

输入样例:
10 3 2 -1 5 3 4 3 0 3 2
输出样例:
3 4

下面是我的代码,提示我段错误是怎么回事啊


#include <stdio.h>
int main() {
    int a = 0;
    scanf("%d", &a);
    int x[a];
    int count[1001] = {0};
    int most_common_count;
    int most_common_num;
    for (int i = 0; i < a; i++) {
        scanf("%d ", &x[i]);
        count[x[i]]++;
    }
    most_common_num = x[0];  // 出现最多的数字
    most_common_count = count[most_common_num];  // 出现的次数
    for (int i = 1; i < a; i++) {
        if (count[x[i]] > most_common_count) {
            most_common_count = count[x[i]];
            most_common_num = x[i];
        }
    }
    printf("%d %d\n", most_common_num, most_common_count);

    return 0;
}
  • 写回答

3条回答 默认 最新

  • threenewbee 2023-12-09 11:43
    关注

    因为你的代码是ai生成的,ai生成的代码错误百出。如果你相信ai,不如继续追问ai。

    评论

报告相同问题?

问题事件

  • 创建了问题 12月9日