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


相关推荐

  • Caliburn.Micro Bootstrapper及IOC容器配置

    Caliburn.Micro Bootstrapper及IOC容器配置如果想深入学习Caliburn.Micro,Bootstrapper和IOC容器配置是重中之重,一定要弄清楚,否则很难理解CM的工作方式。配置Bootstrapper的意义如果在Boostrapper中不进行任何配置的话,Bootstrapper会首先把Bootstrapper所在程序集加载到AssemblySource.Instance中。而我们在Bootstrapper中只在Displa…

    2022年7月20日
    13
  • Johnson算法「建议收藏」

    Johnson算法「建议收藏」为什么80%的码农都做不了架构师?>>>…

    2025年8月23日
    2
  • 高达起源the origin_idea找不到tomcat

    高达起源the origin_idea找不到tomcat“Theoriginserverdidnotfindacurrentrepresentationforthetargetresourceorisnotwillingtodisclosethatoneexists.”,在web开发的过程中,看到这一段错误提示,不管是在入门阶段还是已经是web老手都会感到很头痛。我也是在使用JSTL库的过程中,出现了这

    2022年10月14日
    3
  • visio 2003密钥

    visio 2003密钥序列号:GWH28-DGCMP-P6RC4-6J4MT-3HFDY序列号:WFDWY-XQXJF-RHRYG-BG7RQ-BBDHM

    2022年6月24日
    60
  • unity3D场景_3D夜晚场景

    unity3D场景_3D夜晚场景在学习阿发你好的网课过程中,学习完Unity的2D课程后深有感触,决定将3D学习过程一步步记录下来,也方便日后查询。创建3D项目Step1:在UnityHub中新建3D项目Step2:将页面调整为2×3布局(项目中通常使用2×3)新建项目选择window->layouts->2by3选择window->General->Console调出控制台认识3D场景天空盒skybox:上有蓝天,下有深渊,在计算机图形学学习过程中就有所涉及。ALT+鼠标

    2022年8月10日
    14
  • es6字符串的方法_es6模板字符串

    es6字符串的方法_es6模板字符串       模板字符串(templatestring)也就是模板字面量,是增强版的字符串,用反引号(`)来表示。它既可以当作普通字符串来使用,也可以在字符串中嵌套变量。注意:在模板字符串中嵌入变量的时候,需要将变量名写在${}中。       传统…

    2022年8月21日
    6

发表回复

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

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