#include <stdioh>
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; i<10; i++)
{
sum += a[i];
if(min>a[i])
min = a[i];
if(max<a[i])
max = a[i];
}
printf("最终得分为:%d\n", (sum-min-max)/8);
}
#include<stdioh>
#include<conioh>
#define _for(i,a,b) for(int i=a;i<b;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(maxn<scores[i]){
maxn=scores[i];
imax=i;
}
if(minn>scores[i]){
minn=scores[i];
imin=i;
}
printf("\n");
}
average-=maxn+minn;
average/=80;
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;
}
#include <stdioh>
void bubbleSort(int a[]);
int main(void)
{
int a[9] = {0}, i = 0;
float aver = 00;
printf("请9位评委依次打分:");
for(i = 0; i < 9; i++)
scanf("%d", &a[i]);
bubbleSort(a);
for(i = 1; i < 8; i++)
aver += a[i];
aver /= 7;
printf("平均分为:%f\n", aver);
return 0;
void bubbleSort(int a[])
int i = 0, j = 0, temp = 0;
for(i = 0; i < 8; i++)
for(j = 0; j < 8 - i;j++)
if(a[j] > a[j + 1])
temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp;
}
数组声明
在数组的声明格式里,“数据类型”是声明数组元素的数据类型,可以是java语言中任意的数据类型,包括简单类型和结构类型。“数组名”是用来统一这些相同数据类型的名称,其命名规则和变量的命名规则相同。
数组声明之后,接下来便是要分配数组所需要的内存,这时必须用运算符new,其中“个数”是告诉编译器,所声明的数组要存放多少个元素,所以new运算符是通知编译器根据括号里的个数,在内存中分配一块空间供该数组使用。利用new运算符为数组元素分配内存空间的方式称为动态分配方式。
百度百科-数组
看看这个能不能满足你的要求:
#include"stdioh"
void main()
{float a[12][7],b[12],t;
int i,j,k;
float avr(float (x)[7]);
void arry(float px[]);
printf("评委请打分:\n");/按选手编号打分,如,一号选手得分,分别有7个评委打分,然后是二号选手;/
for(i=0;i<12;i++)
{ for(j=0;j<7;j++)
scanf("%d",&a[i][j]);
b[i]=avr(a+i); /计算每个选手的平均成绩/
printf("%d号选手最终得分:%d\n",i+1,b[i]);
}
for(i=11;i>=0;i--)
{k=i;
for(j=i;j<12;j++)
{if(b[j]<b[k])
k=j;
}
if(b[k]!=b[i])
{t=b[i];b[i]=b[k];b[k]=t;}
}
for(i=0;i<12;i++)
{switch(i)
{case 0: printf("一等奖的获得者是:%d\n",i+1);break;
case 1: printf("二等奖的获得者是:%d号选手\n",i+1);break;
case 2: printf("二等奖的获得者是:%d号选手\n",i+1);break;
case 3: printf("三等奖的获得者是:%d号选手\n",i+1);break;
case 4: printf("三等奖的获得者是:%d号选手\n",i+1);break;
case 5: printf("三等奖的获得者是:%d号选手\n",i+1);break;
case 6: printf("三等奖的获得者是:%d号选手\n",i+1);break;
default: break;
}
}
}
float avr(float (x)[7])
{int i,m,n,t,j,k;
float sum=0;
for(i=0;i<7;i++)
{m=(x)[0];
n=(x)[0];
if((x)[i]>m)
j=i;
if((x)[i]<n)
k=i;
}
{t=(x)[6];(x)[6]=(x)[j];(x)[j]=t;}
{t=(x)[5];(x)[5]=(x)[k];(x)[k]=t;}
for(i=0;i<5;i++)
sum+=(x)[i];
return sum/5;
}
以上就是关于C语言。在歌手大赛中,有10个评委为参赛选手打分全部的内容,包括:C语言。在歌手大赛中,有10个评委为参赛选手打分、编写一段C语言程序完成此题: 歌手大奖赛上有10个评委(放在一个数组中)打分,请设计一个通用程序,、用c语言编写含有数组的程序,9个评委给某选手打分,去掉一个最高分和一个最低分,求该参赛选手的平均分等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)