编程题:为比赛选手评分,读入10名评委的评分,从中扣除一个最高分和一个最低分,输出这个选手的最后得分

编程题:为比赛选手评分,读入10名评委的评分,从中扣除一个最高分和一个最低分,输出这个选手的最后得分,第1张

#include

void main()

{

int a[10],i,max,min,sum=0;//补了“=0”

printf("输入10名评委的评分:\n");

for(i=0;ia[i]) min=a[i];

}

printf("最后得分:%2f\n",(sum-max-min)/80);

}

编译:

#include<stdioh>

void main()

{ int i,a[10],sum=0,j,t;

float avg;

for(i=0;i<10;i++) scanf("%d",&a[i]); /输入/

if(a[j]>a[j+1]) {t=a[j];a[j]=a[j+1];a[j+1]=t;} /排序/

for(i=0;i<10;i++) printf("%d ",a[i]); /去掉一个最高分和最低分/

for(i=1;i<9;i++) sum+=a[i];

avg=(float)sum/8; /求平均分/

printf("平均分是 %f ",avg);

}

百度百科-编程

将十个打分放入数组a[10]中int i=0;while(i<9) //此while可10次将数组中元素作比较{ max=a[i]; min=a[i]; while(a[i]≤a[i+1]) //此while分10次比较,每次将a[i] 、a[i+1]中的 { //大值放入a[i]中,将小值放入a[i+1]中 a=a[i]; a[i]=a[i+1]; a[i+1]=a; i++; while(max<a[i]) //用max存放10次比较后的最大值 { max=a[i]; } while(min>a[i+1]) //用min存放10次比较后的最小值 { min=a[i+1]; } } s=s+a[i];}ave=(s-min-max)/8; //10个打分的总和减最大值max、最小值min,再求平均值 int i=0;do //与while循环最大的区别是循环前先执行一次某种命令 max=a[i]; min=a[i];while(i<9) //此while可10次将数组中元素作比较{ while(a[i]≤a[i+1]) //此while分10次比较,每次将a[i] 、a[i+1]中的 { //大值放入a[i]中,将小值放入a[i+1]中 a=a[i]; a[i]=a[i+1]; a[i+1]=a; i++; while(max<a[i]) //用max存放10次比较后的最大值 { max=a[i]; } while(min>a[i+1]) //用min存放10次比较后的最小值 { min=a[i+1]; } }s=s+a[i];}ave=(s-min-max)/8; //10个打分的总和减最大值max、最小值min,再求平均值 //int i=0;for(int i=0;i<9;i++) //for循环是将循环前的赋值与每次循环后的 *** 作写在一起{ max=a[i]; min=a[i]; for(;a[i]≤a[i+1;] //for循环的赋值、执行命令可以为空,即发生事件 { //此for分10次比较,每次将a[i] 、a[i+1]中的 a=a[i]; //大值放入a[i]中,将小值放入a[i+1]中 a[i]=a[i+1]; a[i+1]=a; //i++; for(;max<a[i];) //用max存放10次比较后的最大值 { max=a[i]; } for(;min>a[i+1];) //用min存放10次比较后的最小值 { min=a[i+1]; } }s=s+a[i];}ave=(s-min-max)/8; //10个打分的总和减最大值max、最小值min,再求平均值

1、首先,定义一个整型变量num,保存评委的人数。

2、接着,定义5个实型变量,保存所打的分数、最低分、最高分、总分和平均分。

3、初始化最低分和最高分,最低分为1000分,最高分为0分。

4、接着,设置总分分数,值为0。

5、输入评委的人数,保存在变量num中。

6、然后,提示输入评委的打分。

7、执行for循环语句,条件为i小于等于num。

8、运行程序,输入各评委的打分后,就会计算出节目的最后得分。

for (int i = 0; i<5; i++) {

d[i]setBh("bh00"+i+1);

请在上面两行的中间插入:(对象都没有创建,怎么 *** 作对象?)

d[i]=new Pwdf();

-----------------------------

d[i]setBh("bh00"+i+1);

改成:

d[i]setBh("bh00"+(i+1));

可能更符合你的原意

main()

{

float chengji[12];

int i = 0;

int j = 0;

int k = 0;

float aver;

float min;

float max;

float sum;

float temp;

sum = 0;

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

{

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

sum +=chengji[i];

}

min = chengji[0];

max = chengji[0];

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

for (k = j + 1; k < i; k++)

{

if (chengji[j] < chengji[k])

{

temp = chengji[j];

chengji[j] = chengji[k];

chengji[k] = temp;

}

}

aver = (sum-chengji[0]-chengji[11])/ 10;

printf("平均成绩为:%f\n", aver);

}

排序还有很多方法,C语言书上有,我只用了最简单的一种(下面加了注解)。

#include <stdioh>

void main()

{

float chengji[12]; //存放成绩

int i = 0; //循环控制

int j = 0; //循环控制

int k = 0; //循环控制

float aver; //记录平均成绩

float min; //记录最低分

float max; //记录最高分

float sum; //记录总分

float temp; //排序时用于交换

sum = 0; //初始化为0

printf("请输入成绩\n");

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

{

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

sum +=chengji[i]; //将成绩累加

}

min = chengji[0]; //初始化

max = chengji[0]; //初始化

//排序,从大到小

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

for (k = j + 1; k < i; k++)

{

if (chengji[j] < chengji[k])

{

temp = chengji[j];

chengji[j] = chengji[k];

chengji[k] = temp;

}}

aver = (sum-chengji[0]-chengji[11])/ (i-2); //求平均成绩

printf("平均成绩为:%f\n", aver);

}

以上就是关于编程题:为比赛选手评分,读入10名评委的评分,从中扣除一个最高分和一个最低分,输出这个选手的最后得分全部的内容,包括:编程题:为比赛选手评分,读入10名评委的评分,从中扣除一个最高分和一个最低分,输出这个选手的最后得分、一道java编程题,10个评委打分,去带最高分和最低分,剩下的8个的平均分是选手最终成绩、编程,某歌手大赛有10位选手10位评委要求评委给10位选手打分去掉一个最低分去掉一个最高分求出平均分等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/zz/10105699.html

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

发表评论

登录后才能评论

评论列表(0条)

保存