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

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • jenkins详解

    jenkins详解Jenkins是一个功能强大的应用程序,允许持续集成和持续交付项目,无论用的是什么平台。这是一个免费的源代码,可以处理任何类型的构建或持续集成。集成Jenkins可以用于一些测试和部署技术。Jenkins是一种软件允许持续集成。

    2022年6月2日
    72
  • 万字深研:元宇宙应该是生产力工具,而不只是游戏娱乐「建议收藏」

    万字深研:元宇宙应该是生产力工具,而不只是游戏娱乐「建议收藏」元宇宙就是一个筐,大家什么东西都往里面装。出品|Odaily星球日报(ID:o-daily)我是Odaily星球日报的创始人Mandy,Odaily近期与36Kr联合出品…

    2022年7月19日
    25
  • python用pip安装whl文件

    python用pip安装whl文件1.安装python第三方包:注:安装whl文件,前提执行,才能成功。pipinstallwheel&lt;1.进入c:\python\scripts的目录&lt;2.在D:\Python27\Scripts目录下用管理员打开cmd,运行pip命令pipinstall包的名字.whl当然也可以使用:pipinstallC:\Users\xxx\Downloads…

    2022年5月7日
    176
  • 什么是敏捷开发_一个完整的敏捷开发的流程

    什么是敏捷开发_一个完整的敏捷开发的流程0、先来一张导图1、概念简单的说,敏捷开发是一种以人为核心、迭代、循序渐进的开发方法。在敏捷开发中,软件项目的构建被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征。换言之,

    2022年8月1日
    2
  • 显卡挖矿怎么安装_显卡挖矿教程

    显卡挖矿怎么安装_显卡挖矿教程一、制作操作系统镜像文件前准备1.下载win10操作系统镜像。下载地址:http://miner.tools/software/142.下载并安装软碟通。3.准备一个U盘。二、制作U盘操作系统镜像文件1.右键单击软碟通,以管理员身份运行:2.在软碟通中打开下载的操作系统镜像:3.插入U盘,点击“启动”下的“写入硬盘映像…”:4.硬盘驱动器选择刚插入的U盘,点格式化:5.在格式化窗口,文件系统选NT…

    2022年9月30日
    4
  • linux 解压缩zip文件 unzip 命令详解[通俗易懂]

    linux 解压缩zip文件 unzip 命令详解[通俗易懂]linuxunzip命令详解功能说明:解压缩zip文件语法:unzip[-cflptuvz][-agCjLMnoqsVX][-P][.zip文件][文件][-d][-x]或unzip[-Z]补充说明:unzip为.zip压缩文件的解压缩程序。参数:-c将解压缩的结果显示到屏幕上,并对字符做适当的转换。-f更新现有的文件。

    2022年6月5日
    44

发表回复

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

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