C语言找出一个数组中出现次数最多的那个元素

问题描述:

C语言找出一个数组中出现次数最多的那个元素
第一行输入一个整数n(不大于20)第二行输入n个整数,找出n个整数中出现次数最多的那个整数
1个回答 分类:综合 2014-11-27

问题解答:

我来补答
#include "stdio.h"
int main()
{
 int n,a[20],i,j,flag=0,max;
 int b[20]={0};//计数数组
 scanf("%d",&n);
 for(i=0;i<n;i++)
  scanf("%d",&a[i]);
    for(i=0;i<n-1;i++)
  for(j=i+1;j<n;j++)
   if(a[i]==a[j])
    b[i]++;
 for(i=0;i<n;i++)
  if(b[i]!=0)
  {
   flag=1;
   break;
  }
 if(flag==0)
 {
  printf("输入数据中没有重复出现的数!\n");
  return 1;
 }

 max=b[0];
 for(i=1;i<n;i++)
  if(b[i]>max)
   max=b[i];
 for(i=0;i<n;i++)
   if(max==b[i])
  printf("出现最多次数的是%d,一共出现%d次\n",a[i],b[i]+1);

}


 
 
展开全文阅读
剩余:2000