#include <algorithm>
using namespace std;
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#include <iostream>
//数据取值为8000-1008000
int cnt[100000];
int number[100000];
void Average(int number[],int n)//求平均数
{
long long int sum=0;
for(int i=0;i<n;i++)
{
sum=sum+number[i];
}
float average=sum/100000.0;
cout<<"平均数为:"<<average<<endl;
}
void Median(int number[],int n)
{
sort(number,number+10);
int b=100000/2;
int c=100000/2+1;
float median=(number[b]+number[c])/2.0;
cout<<"中位数为:"<<median<<endl;
}
void Book(int number[],int n)
{
int maxl=0;
int same=1;
for(int i=0;i<n;i++)
{
cnt[number[i]]++;
if(maxl<cnt[number[i]])
{
maxl=cnt[number[i]];
}
}
for(int i=0;i<n-1;i++)
{
if(cnt[number[i]]!=cnt[number[i+1]])
{
same=0;
break;
}
}
if(same)
{
cout<<"没有众数"<<endl;
}
sort(number,number+100000);
cout<<"众数:";
for(int i=0;i<n;i=i+cnt[number[i]])
{
if(cnt[number[i]]==maxl)
{
cout<<number[i]<<" ";
}
}
}
int main()
{
int n=100000;
srand((unsigned)time(NULL));
for(int i=0;i<100000;i++)
{
number[i]=rand()%1000000+8000;
}
Average(number,n);
Median(number,n);
Book(number,n);
}
以上代码在c++的环境里面可以直接运行。