结构体与共用体( 选票统计)

此代码输入
3 10
3 3 3 3 3 3 1 2 3 2
为什么,第四行输出7 7 7 ?

#include <stdio.h>
    struct people
    {
        int a;
    }ele[1001]={0};
    int main()
    {
        int m,n;
        scanf("%d%d",&m,&n);
        int a[n+1];
        int i;
        for(i=1;i<n+1;i++)
            scanf("%d",&a[i]);
        int max=0,MAX;
        for(i=1;i<n+1;i++)
            printf("%d ",a[i]);
        printf("\n");
        for(i=1;i<n+1;i++)
        {
            (ele[a[i]].a)++;
        }
            for(i=1;i<m+1;i++)
        {
            printf("%d ",ele[a[i]].a);
        }
             printf("\n");
            for(i=1;i<m+1;i++)
        {
            if(ele[i].a > max)
            {
            MAX=ele[i].a;
              max=i;
            }
        }
            printf("%d\n%d",max,MAX);
        return 0;
    }

img

ele[30000]数组再稍微定义大些看看

定义候选人的结构体数组就可以,投票人输入数组后,相应的结构体数组元素票数+1就可以了啊。

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632