题要求统计一个整型序列中出现次数最多的整数及其出现次数。
输入格式:
输入在一行中给出序列中整数个数N(0<N≤1000),以及N个整数。数字间以空格分隔。
输出格式:
在一行中输出出现次数最多的整数及其出现次数,数字间以空格分隔。题目保证这样的数字是唯一的。

我的答案:

#include<stdio.h>

int main() 
{
    int n;
    scanf("%d", &n);
    int a[1000];
    int count=0;
    int max = 0, maxcount = 0;
    int i,j;
    for (i = 0; i < n; i++)//将数字填入数组
    {
        scanf("%d", &a[i]);
    }
    for (i = 0; i < n; i++)
    {
        for (j = 0; j < n; j++)
        {
            if (a[i] == a[j])//计算i的次数
            {
                count++;
            }
        }
        if (count > maxcount)//比较i的次数
        {
            maxcount = count;
            max = a[i];
        }
        count = 0;//这里一定要清零,否则会记录所有元素的次数,我老是忘记这点
    }
    printf("%d %d", max, maxcount);
    return 0;
}

在编写程序时,要搞清楚变量的作用

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐