#include
void score(int n)
{
double res[100];
double sum=0;
double ave;
for (int i=0;i
cin>>res[i];
}
for (i=0;i
sum+=res[i];
}
ave=sum/n;
cout<<"总分为:"<
for (i=0;i
if(res[i]>=max)
{
max=res[i];
}
}
cout<<"最高分为:"<
for(int j=0;j<=i;j++)
{
if(res[i]>res[j])
{
double temp=res[i];
res[i]=res[j];
res[j]=temp;
}
}
}
cout<<"成绩由高到低排序:";
for(i=0;i
cout<
}
void main()
{
int n=10;
cout<<"请输入"<
cout<
//统计分数频率 并排序3——1
#include
#include
#define max 100
int main()
{
int i,j,k,t,s,x,n,M;
bool flag;
float a[max],b[max],c[max],m[max];
s=0;
k=0;
x=0;
while(scanf("%f",&a[s])!=EOF)
{
s++;
}
for(i=0;i {
flag=1;
for(j=i+1;j {
if(a[j]==a[i])
{
flag=0;
break;
}
}
if(flag)
b[x++]=a[i];
}
// for(i=0;i
for(n=0;n
k=1;
for(i=0;i if(b[n]==a[i])
c[n]=k++;
//for(k=0;k
}
M=c[0];
for(k=1;k
if(M
M=c[k];
// m[0]=b[k];
}
//printf("%f\n\n",M);
}
k=0;
for(i=0;i
if(M==c[i])
m[k++]=b[i];
}
for(i=0;i
for(j=0;j
{
t=m[j];m[j]=m[j+1];m[j+1]=t;
}
}
for(i=0;i
return 0;
}
//分六步骤
一
首先存储随机的学生分数 使用一个累加器S
二
其次for循环存储出现的各个分数代表运用到“锁”flag用法一定得记住(怎么设flag初值,一定在满足条件后就跳出break)
三
用c[x]存各个分数出现的频率,累加器k注意在每次大循环前赋值k=1;
四
再比较法 找到C[x]中最大值M
五
再顺序查找出c[x]中和M一样大的分数b[x]存到m[k++]中,
六
冒泡排序法对m[k]进行升序排序
输出