用C++做程序有10个评委打分,试对10个分数排序,并求这位选手的平均分(去掉一个最高分和一个最低分)

用C++做程序有10个评委打分,试对10个分数排序,并求这位选手的平均分(去掉一个最高分和一个最低分),第1张

1楼用到了泛型算法sort如果你要是不懂得话,可以自己编写一个排序冒泡啊之类的都可以我这里给你一个#include <iostream>

using namespace std;

//冒泡排序,升序排列,时间复杂度O(n^2),如果原始数据已经有序则复杂度为n

void bubblesort(int r[],int n)

{

int i,j,flag;

for (i=1;i<=n;i++)

{

flag=1; //设置交换标志,flag=1时为未交换

for (j=1;j<=n-i;j++)

if (r[j+1]<r[j])

{

flag=0; //已交换

r[0]=r[j];r[j]=r[j+1];r[j+1]=r[0];

}

if (flag !=0) break; //未交换,排序结束

}

}

int main ()

{

const int maxsize=10;

int r[maxsize+1];

for (int i=1;i<=maxsize;i++)

{

cin>>r[i];

}

bubblesort (r , maxsize);

for ( i=1;i<=maxsize;i++)

{

cout<<r[i]<<endl;

}

return 1;

}

#include<stdioh>

int main(void)

{

    float a[10],temp;

    printf("请输入分数:\n");

    int i,j;

    for(i=0;i<10;i++)

    {

        scanf("%f",&a[i]);

    }

    for(i=0;i<9;i++)

    {

        for(j=0;j<9-i;j++)

        {

            if(a[j]<a[j+1])

            {

                temp = a[j];

                a[j] = a[j+1];

                a[j+1] = temp;

            }

        }

    }

    

    printf("最高分:%2f\n最低分:%2f\n",a[0],a[9]);

    return 0;

}

#include "stdioh"

int main()

{

struct st

{

char name[10];

int cj[20];

double avage;

}std[50],t;

int m,n,i,j,k;

double max,min;

printf("输入选手人数:");

scanf("%d",&m);

printf("输入评委人数:");

scanf("%d",&n);

printf("输入%d个选手:",m);

for(i=0;i<m;i++)

scanf("%s",std[i]name);

for(i=0;i<m;i++)

{

printf("输入第%d个选手的%d个成绩:",i,n);

for(j=0;j<n;j++)

{

scanf("%d",&std[i]cj[j]);

}

}

//求平均

for(i=0;i<m;i++)

{

max=(double)std[i]cj[0];

min=(double)std[i]cj[0];

std[i]avage=(double)std[i]cj[0];

for(j=1;j<n;j++)

{

if(max<std[i]cj[j])

max=std[i]cj[j];

if(min>std[i]cj[j])

min=std[i]cj[j];

std[i]avage=std[i]avage+std[i]cj[j];

}

std[i]avage=(std[i]avage-max-min)/(double)(n-2);

}

//排序

for(i=0;i<m;i++)

{

for(j=m-1;j>i;j--)

{

if(std[j]avage>std[j-1]avage)

{

t=std[j];std[j]=std[j-1];std[j-1]=t;

}

}

}

for(i=0;i<m;i++)

{

printf("%s:%2lf\n",std[i]name,std[i]avage);

}

}

以上就是关于用C++做程序有10个评委打分,试对10个分数排序,并求这位选手的平均分(去掉一个最高分和一个最低分)全部的内容,包括:用C++做程序有10个评委打分,试对10个分数排序,并求这位选手的平均分(去掉一个最高分和一个最低分)、C语言编程题:歌唱比赛十个评委打分,请求出其中的最高分和最低分并进行输出(要求从键盘接收数据)。、设计C语言程序共有M个选手参加比赛,N个评委进行打分,从键盘输入M个选手的各N个成绩(按照先输入第一个等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/10126837.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存