百里乐天 2020-12-13 19:07 采纳率: 100%
浏览 38
已采纳

c语言简单函数,与数组有关

编写一个函数,功能是寻找数组中出现次数最多的元素。函数原型如下 int ModeOfAr(int a[], int n);

  • 写回答

3条回答 默认 最新

  • 小渝同学 2020-12-14 08:06
    关注
    #include <stdio.h>
    void ModeOfAr(int a[], int n)
    {
    	//求出数组a中最大的数 存入max 
    	int max=-1;
    	for(int i=0;i<n;i++)
    	{
    		if(max<a[i])
    			max=a[i];
    	}
    	
    	//定义一个 max+1大小的数组arr 
    	int arr[100000];
    	//对应值当下标存入arr中 
    	for(int i=0;i<n;i++)
    	{
    		arr[a[i]]++;
    	}	
    	//求出arr中最大值 为次数  下标为元素 
    	int c=0,z=0;
    	for(int i=0;i<max+1;i++)
    	{
    		if(c<arr[i])
    		{
    			c=arr[i];
    			z=i;
    		}	
    	}
    	printf("次数最多的元素为:%d\n一共出现现了:%d次\n",z,c);
    }
    
    int main()
    {
    	int a[10]={1,77,4,77,77,4,7,6,77,0};
    	ModeOfAr(a,10);
    }
    
    

    你没说数组是什么类型 里面存的是什么值 。既然你说是简单的题  那就当是数组内都是正数,且最大值不大于100000的正数 

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 Macbookpro 连接热点正常上网,连接不了Wi-Fi。
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
  • ¥15 linux驱动,linux应用,多线程
  • ¥20 我要一个分身加定位两个功能的安卓app
  • ¥15 基于FOC驱动器,如何实现卡丁车下坡无阻力的遛坡的效果
  • ¥15 IAR程序莫名变量多重定义
  • ¥15 (标签-UDP|关键词-client)
  • ¥15 关于库卡officelite无法与虚拟机通讯的问题
  • ¥15 目标检测项目无法读取视频
  • ¥15 GEO datasets中基因芯片数据仅仅提供了normalized signal如何进行差异分析