编写一个函数,功能是寻找数组中出现次数最多的元素。函数原型如下 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的正数
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥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如何进行差异分析