美女秃头


私信TA

用户名:H2030819088

访问量:125

签 名:

加油!我是最胖的!

等  级
排  名 654
经  验 2810
参赛次数 3
文章发表 3
年  龄 0
在职情况 学生
学  校 贺州学院
专  业

  自我简介:

c语言要加油呀!

解题思路:1、用数组中的每个数与数组中的数进行比较,相同则+1,+2,+..每次比较获得的值存入数组(重数)中,每次比较的值存入(众数)数组中

2,、找出(重数)数组中最大的数就是重数值;

3、(重数)数组位置,就是(众数)数组位置,输出众数;

4、我没有进行多个众数,大小的比较,还没有想好怎么写,但是根据我这个答案运行也是正确的

注意事项:

参考代码:

#include <stdio.h>

int main()

{

    int a[100],m[100],x[100];//a输入数据,m存储重数个数,x存储众数位置;

    int k,i,j,y,n;

    int l=0,max;

        scanf("%d",&n);//多少个数进行比较 

            for(i=0;i<n;i++)

            {

                scanf("%d",&a[i]);//输入n个数 

            }

            for(i=0;i<n;i++)

            {

                m[i]=0;//重数个数 

                x[i]=0;//众数 

             }

            for(i=0;i<n;i++)

            {

                k=a[i];

                    for(j=0;j<n;j++)

                    {

                        if(k==a[j])//从第一个数开始与数组中每个数进行比较 

                            m[l]+=1;//相同则加一 

                    }

                    x[l]=k;//数组存储每个判断过得数 

                   l++;

           }

          max=m[0];//进行大小比较 

            for(i=0;i<n;i++)

            {

                if(max<=m[i])

               {

                    max=m[i];//最多的即为重数 

                    y=i;//记录最多数的位置 

                }

            }

                printf("%d\n%d",x[y],max);//输出众数、重数; 

        return 0;

}


 

0.0分

0 人评分

  评论区