c语言求n个数的中位数_众数中位数平均数的特点

c语言求n个数的中位数_众数中位数平均数的特点记录一下之前困扰了我很久的中位数和众数的函数TvT#include<stdio.h>#include<stdlib.h>#defineN40doubleAverage(intfeedback[N]);doubleMedian(intfeedback[N]);intMode(intfeedback[N],intb[]);intmain(){intfeedback[N]={0},b[N]={0};intmodnum=0


Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

记录一下之前困扰了我很久的中位数和众数的函数TvT
在这里插入图片描述

#include <stdio.h>
#include <stdlib.h>
#define N 40
double Average(int feedback[N]);
double Median (int feedback[N]);
int Mode(int feedback[N],int b[]);

int main()
{ 
   
    int feedback[N]={ 
   0},b[N]={ 
   0};
    int modnum=0;               //众数
    double aver,middle;        //平均数,中位数
    int i;
    for(i=0;i<N;i++)
   { 
   
       scanf("%d",&feedback[i]);
   }
   aver=Average(feedback);
   middle=Median(feedback);
   modnum=Mode(feedback,b);
   printf("%lf %lf %d",aver,middle,modnum);
   return 0;
}

double Average(int feedback[N])
{ 
   
    int i;
    double sum=0,aver;
    for (i=0;i<N;i++)
    { 
   
        sum+=feedback[i];
    }
    aver=sum/N;
    return aver;
}
double Median(int feedback[40]) //中位数
{ 
   
   int i,j,m;
   double middle;
   for(i=0;i<39;i++)
   { 
   
      for(j=0;j<39;j++)
      if(feedback[j]>feedback[j+1])  //选择排序——升序排列
      { 
   
          m=feedback[j];
          feedback[j]=feedback[j+1];
          feedback[j+1]=m;
      }
   }
   middle=(feedback[19]+feedback[20])/2.0;  //因为题目给定的学生人数为40人.当未知人数时应当分类讨论
   return middle;
}

int Mode(int feedback[N],int b[])  //众数
{ 
   
   int i,modnum=0,m=0;
   for(i=0;i<N;i++)  
   { 
   
       b[feedback[i]]++;    //将重复数字的出现次数保存在另一个数组
   }
   for(i=0;i<N;i++)
   { 
   
       if(m<b[feedback[i]])  //找出出现次数最大的数
       { 
   
           m=b[feedback[i]];
           modnum=feedback[i];
       }
   }
   return modnum;
}


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/192481.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • 八大排序算法(java实现) 冒泡排序 快速排序 堆排序 归并排序 等[通俗易懂]

    八大排序算法(java实现) 冒泡排序 快速排序 堆排序 归并排序 等[通俗易懂]八大排序算法一、直接插入-1.基本思路-2.代码实现-3.时间复杂度和空间复杂度二、希尔排序-1.基本思路-2.代码实现-3.时间复杂度和空间复杂度三、简单选择-1.基本思路-2.代码实现-3.时间复杂度和空间复杂度四、堆排序-1.基本思路-2.代码实现-3.时间复杂度和空间复杂度五、冒泡排序-1.基本思路-2.代码实现-3.时间复杂度和空间复杂度六、快速排序-1.基本思路-2.代码实现-3.时间复杂度和空间复杂度七..

    2022年7月13日
  • kettle工具的介绍和使用

    kettle工具的介绍和使用kettle详解(数据抽取、转换、装载)原文地址链接:https://blog.csdn.net/qq_35731570/article/details/71123413文件资源库模式的调度命令:job:$kitchen路径-file=$job路径kitchen.sh-file=/opt/dpbs/kettlefile/pan_quality_indicator….

    2022年10月16日
  • 44页智慧生活社区+智慧小区建设方案[通俗易懂]

    44页智慧生活社区+智慧小区建设方案[通俗易懂]喜欢文章可以【转发➕评论】,关注公众号“智慧方案文库“,私信获取解决方案。本文章引用的资料均通过互联网等公开渠道合法获取,仅作为行业交流和学习使用,并无任何商业目的。其版权归原资料作者或出版社所有,作者不对所涉及的版权问题承担任何法律责任。若版权方、出版社认为本文章侵权,请立即通知作者删除。更多方案【2021】77页数字李生智慧园区解决方案(附下载)【2021】102页新一代数字化转型信息化总体规划方案(附下载)【2021】85页5G+物联网智慧校园解决方案(附下载)【2021】60页智慧城市运营管理平台

    2022年10月17日
  • dubbo如何实现rpc调用_dubbo支持grpc

    dubbo如何实现rpc调用_dubbo支持grpc使用telnet测试dubborpc接口

    2022年10月7日
  • navcat15.0激活码【最新永久激活】

    (navcat15.0激活码)JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。建立在开源IntelliJ平台之上,过去15年以来,JetBrains一直在不断发展和完善这个平台。这个平台可以针对您的开发工作流进行微调并且能够提供…

    2022年3月31日
  • 指令重排的意义[通俗易懂]

    指令重排的意义[通俗易懂]现代计算机由三大部分组成(已经转化为以存储器为中心)1.CPU(CentralProcessingUnit)中央处理器,核心部件为ALU(ArithmeticLogicUnit,算术逻辑单元)和CU(ControlUnit,控制单元)2.I/O设备(受CU控制)3.主存储器(MainMemory,MM),分为RAM(随机存储器)和ROM(只读存储器)//CPU与MM合…

    2022年10月9日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号