十个评委打分编程简单C语言(十个评委打分编程简单while)
C语言。在歌手大赛中,有10个评委为参赛选手打分
#include stdio.h
void main()
{
int i;
float a[10], min, max, sum;
printf("请输入10个评委所给分数(空格隔开):");
scanf("%f%f%f%f%f%f%f", a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9]);
min = max = a[0];
sum = a[0];
for(i=1; i10; i++)
{
sum += a[i];
if(mina[i])
min = a[i];
if(maxa[i])
max = a[i];
}
printf("最终得分为:%d\n", (sum-min-max)/8);
}
C语言:歌星大奖赛中,有十个评委为参赛的选手打分,分数为1-100分,选手最后得分为去掉一个最高分
代码如下
#include iostream
using namespace std;
int main()
{int a[10],f[10],i,k,m,n,b,c,y,p,q,d,average,h,g;
cout"输入十位评委按顺序的打分:";
for(i=0;i10;i++)
{cina[i];
}? ? ? ? ? ? ? ? ? ? ? ? ? ?
for(b=0;b10;b++)
{while(a[b]100||a[b]0)
{cout"选手得分超出规定范围,请第"b+1"位评委重新打分!"endl;
cina[b];
}
}
m=a[0];n=a[0];
for(k=0,c=0;k9;k++)
{
if(m=a[k+1])? m=a[k+1];
if(n=a[k+1])? n=a[k+1];
c=c+a[k];
}
c=c+a[9];
y=c-m-n;
average=y/8;
for(p=0;p10;p++)
{f[p]=a[p]-average;
if(f[p]0) {f[p]=-f[p];}
}
q=f[0];d=f[0];
for(k=0,h=1;k9;k++)
{
if(q=f[k+1])? q=f[k+1] ,h=k+2;
if(d=f[k+1])? d=f[k+1],g=k+2;
}
cout"选手的平均分是"averageendl;
cout"最公平评委是第"g"位评委。"endl;
cout"最不公平评委是第"h"位评委。"endl;
return 0;
}
C语言代码技巧
1、使用合适的条件语句
除代码的可读性之外,程序的执行时间还主要依赖于做决定时所选择的条件结构类型。许多硬件工程师都熟悉简单的if语句的使用。然而,有时工程师可能没有意识到,如果第一个条件不正确,还可以使用else或else if语句。
2、用If/Else替代只用If
If/else if/else语句可能并不永远适用。如果需要检查若干个可能的条件,switch语句可能更合适。这样,处理器可以评估语句,然后从一个答案列表中选择下一步动作,而不用连续地评估一堆条件。
(用C语言编程)求十位评委对选手打分的平均得分(去掉最低分和最高分)
float score[10] = {};//存放所有得分,初始为0
float min= score[0],max = score[0];//让最小和最大都等于第一个评委
float all = 0,mean;//总分和平均分
for(int i = 0;i 10;++i)
{
printf("输入第%位评审的得分:",i);
scanf("%f",score[i]);
if(score[i] min) //如果比min小就让最小值等于它
min = score[i];
if(score[i] max)//如果比max大,就让最大值等于它
max = score[i];
}
for(int i = 0;i 10;++i)
{
if(score[i] != min score[i] != max)//遍历数组,不等于最值就加到总分上
all += score[i];
}
mean = all / 8;//得到平均分
编写一段C语言程序完成此题: 歌手大奖赛上有10个评委(放在一个数组中)打分,请设计一个通用程序,
#includestdio.h
#includeconio.h
#define _for(i,a,b) for(int i=a;ib;i++)
using namespace std;
int scores[10];
double average,maxn,minn=0x7f,imax,imin;
int main(){
system("cls");
_for(i,0,10){
printf("Please input a score:");
scanf("%d",scores[i]);
average+=scores[i];
if(maxnscores[i]){
maxn=scores[i];
imax=i;
}
if(minnscores[i]){
minn=scores[i];
imin=i;
}
printf("\n");
}
average-=maxn+minn;
average/=8.0;
printf("\nThe average: %.6lf\n",average);
printf("The max: %.6lf\n",maxn);
printf("The min: %.6lf\n",minn);
_for(i,0,10){
if(scores[i]average){
printf("%d,%.6lf\n",i+1,double(maxn));
}
}
printf("max: %d,%.6lf\n",imax+1,maxn);
printf("min: %d,%.6lf\n\n",imin+1,minn);
printf("Next singer? y or Y: ");
char k=getch();
if(k=='y' || k=='Y')main();
return 0;
}
C语言编程题:歌唱比赛十个评委打分,请求出其中的最高分和最低分并进行输出(要求从键盘接收数据)。
#includestdio.h
int?main(void)
{
????float?a[10],temp;
????printf("请输入分数:\n");
????int?i,j;
????for(i=0;i10;i++)
????{
????????scanf("%f",a[i]);
????}
????for(i=0;i9;i++)
????{
????????for(j=0;j9-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;
}