当前位置:首页 » 编程语言 » c语言设计打分系统
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言设计打分系统

发布时间: 2022-05-20 04:45:31

c语言程序设计 裁判打分系统

#include <stdio.h>
int main()
{
double a[5];
double sum,min,max;
int i;
for(i=0;i<5;i++) //循环5次
{
scanf("%lf",&a[i]); //输入分数
if(i==0) //如果是第一个数,就设置最大值最小值为第一个数
{
min=a[i];
max=a[i];
}
else{ //若不是第一个数,那么如果这个数比当前最大值还大,则设为最大值(最小值同理)
if(a[i]>max) max=a[i];
if(a[i]<min) min=a[i];
}
sum+=a[i]; // 计算总和
}

printf("%lf",(sum-min-max)/3); //总和减去最大值,最小值,除以个数
}

② 实现一个有n个裁判打分系统,C语言题目 麻烦高手帮忙啊!

#include<stdio.h>
#include<stdlib.h>
#define
MAX
100
void
main(void)
{
int
n,i=0;
float
aver=0.0,sum=0.0,*start,*p,max,min;
//获取裁判数n
do{
printf("请输入裁判数--->n:\n");
scanf("%d",&n);
}while((n<=2)
||
(n>MAX));
start
=
(float
*)malloc(n*sizeof(float));
p
=
start;
//获取裁判打分,带检测,超出范围的重新打分
do
{
printf("请裁判%d打分:",i);
scanf("%f",p);
if((*p<0)
||
(*p>100))
printf("打分超出范围,请重新打分:\n");
else
{
i++;
p++;
}
}while(i!=n);
p
=
start;
max=*p;
min=*p;
//求最高分,最低分和平均分
for(i=0;i<n;i++)
{
if(*p
>
max)
max=*p;
else
if(*p
<
min)
min=*p;
sum
=
sum
+
(*p);
p++;
}
aver
=
(sum
-
max
-
min)/(n-2);
printf("去掉一个最高分%6.2f分,去掉一个最低分%6.2f分,平均分为%6.2f分。\n",max,min,aver);
}

③ c语言编程:本课题模拟一个简单的比赛评分系统,选手从1号开始连续编号,选手得分分为专业素质得分和综

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#defineMAXNAMELENGTH13
typedefstruct{
intid;
charname[MAXNAMELENGTH];
doublescores[9];
doublescore1,score2;
doublescore;
}PLAYER;
voidPlayer(PLAYER*dst,constPLAYERsrc){
memcpy(dst->name,src.name,MAXNAMELENGTH*sizeof(char));
memcpy(dst->scores,src.scores,9*sizeof(double));
dst->id=src.id;
dst->score1=src.score1;
dst->score2=src.score2;
dst->score=src.score;
}
voidbubbleSort_Players(PLAYER*src,intlen){//(descending).Timecomplex:O(n^2)
inti,j;
PLAYERtemp;
for(i=0;i<len;i++){
for(intj=0;j<len-1;j++){
if(src[j].score<src[j+1].score){
Player(&temp,src[j]);
Player(src+j,src[j+1]);
Player(src+j+1,temp);
}
}
}
}
doublegetScore(double*src,intn){
doubleret=0,mins=100,maxs=0;
for(inti=0;i<n;i++){
if(src[i]>maxs)
maxs=src[i];
if(src[i]<mins)
mins=src[i];
ret+=src[i];
}
return(ret-mins-maxs)/(n-2);
}
intmain(){
freopen("in.txt","r",stdin);
intn,i,j;
PLAYER*pl;
printf("请输入选手数量:");
scanf("%d",&n);
FILE*fp=fopen("PlayerScore.txt","w");
pl=(PLAYER*)malloc(sizeof(PLAYER)*n);
fprintf(fp,"|id|name|judge1|judge2|judge3|judge4|judge5|judge6|judge7|judge8|judge9|ProScore|QualityScore|TotalScore| ");
for(i=0;i<n;i++){
printf("请输入第%d名选手的姓名:",i+1);
scanf("%s",pl[i].name);
printf("请输入9名裁判对%s的打分(以空格分隔): ",pl[i].name);
pl[i].id=i+1;
for(j=0;j<9;j++)
scanf("%lf",pl[i].scores+j);
pl[i].score1=getScore(pl[i].scores,9);
printf("请输入选手的综合素质得分:");
scanf("%lf",&pl[i].score2);
pl[i].score=0.9*pl[i].score1+0.1*pl[i].score2;
}
bubbleSort_Players(pl,n);
for(i=0;i<n;i++){
fprintf(fp,"|%06d|%12.12s|",pl[i].id,pl[i].name);
for(j=0;j<9;j++)
fprintf(fp,"%6.2lf|",pl[i].scores[j]);
fprintf(fp,"%6.2lf|%6.2lf|%6.2lf| ",pl[i].score1,pl[i].score2,pl[i].score);
}
return0;
}

东西写好了,左右的输出都存在本程序目录下的PlayerScore.txt里,望采纳

④ c语言编程:歌唱比赛评委评分系统

#include <stdio.h>
#include<string.h>
void main()
{
int i,j,m,n;
float num,xgrade[100],max,min,pgrade[100],pdis[100];
char str[10],xname[100][10],pname[100][10];
printf("请输入评委人数:");
scanf("%d",&m);
printf("\n请分别输入评委姓名:\n");
for(i=0;i<m;i++)
{
scanf("%s",&pname[i]);//评委姓名
pgrade[i]=0;//评委给的分
pdis[i]=0;//评委给分和最后结果的差距
}
printf("\n请输入选手人数:");
scanf("%d",&n);
printf("\n请分别输入选手姓名:\n");
for(i=0;i<n;i++)
{
scanf("%s",&xname[i]);//选手姓名
xgrade[i]=0;//选手成绩
}
for(i=0;i<n;i++)
{
max=0;min=10;//评委给选手的最大最小成绩
printf("\n请给选手%s打分!",xname[i]);
for(j=0;j<m;j++)
{
printf("\n%s老师给的分数为:",pname[j]);
scanf("%f",&pgrade[j]);
xgrade[i]+=pgrade[j];//加到该选手的总分数中
if(max<pgrade[j])
max=pgrade[j];
if(min>pgrade[j])
min=pgrade[j];
}
xgrade[i]=(xgrade[i]-max-min)/(m-2);//最后成绩为总成绩-最高分-最低分,然后平均
for(j=0;j<m;j++)//算出每个评委本次评分和最终成绩的差,加到pdis中保存起来
{
pdis[j]+=pgrade[j]>xgrade[i]?(pgrade[j]-xgrade[i]):(xgrade[i]-pgrade[j]);
}
}
for(i=0;i<n-1;i++)
for(j=0;j<n-1-i;j++)
if(xgrade[j]<xgrade[j+1])
{
strcpy(str,xname[j]);
strcpy(xname[j],xname[j+1]);
strcpy(xname[j+1],str);
num=xgrade[j];
xgrade[j]=xgrade[j+1];
xgrade[j+1]=num;
}
printf("\n选手按名次排名为:\n");
printf("选手名\t得分\n");
for(i=0;i<n;i++)
printf("%s\t%f\n",xname[i],xgrade[i]);
for(i=0;i<m-1;i++)
for(j=0;j<m-1-i;j++)
if(pdis[j]>pdis[j+1])
{
strcpy(str,pname[j]);
strcpy(pname[j],pname[j+1]);
strcpy(pname[j+1],str);
num=pdis[j];
pdis[j]=pdis[j+1];
pdis[j+1]=num;
}
printf("\n评委按名次排名为:\n");
printf("评委名\t差分\n");
for(i=0;i<m;i++)
printf("%s\t%f\n",pname[i],pdis[i]);
}
vae.la

⑤ c语言程序设计一个评委打分系统 下面是要求

#include<stdio.h>
#include<stdlib.h>

main()
{
float*score,max1=0,max2=0,min1=10,min2=10,sum=0;//假设是10分制
inti,n;
printf("输入评委的人数:");
scanf("%d",&n);
score=(float*)malloc(sizeof(float));
printf("依次输入%d个评委打出的分数: ",n);
for(i=0;i<n;i++){
scanf("%f",score+i);
sum+=score[i];
if(score[i]>max1){
max2=max1;
max1=score[i];
}elseif(score[i]>max2)
max2=score[i];
if(score[i]<min1){
min2=min1;
min1=score[i];
}elseif(score[i]<min2)
min2=score[i];
}
sum-=max1+min1;
if(n>=9){
sum-=max2+min2;
n-=4;
}elsen-=2;
printf("选手的平均分是:%.2f ",sum/n);
}

⑥ C语言程序设计裁判打分系统

# include <stdio.h>
# define N 4
void main()
{
int a[N] ={0};
int i,min,max,sum;
sum = 0;
for(i=0; i<N; i++)
{
printf("请输入裁判给的分数:");
scanf("%d",&a[i]);
if (a[i]<0 || a[i]>100)
{
printf("输入有误,请重新输入:");
scanf("%d",&a[i]);
}
}
min = a[0];
max = a[0];
for (i=0; i<N; i++)
{
if (min > a[i])
min = a[i];
if (max< a[i])
max = a[i];
sum += a[i];
}
printf("该选手的平均分为:%d",(sum-min-max)/(N-2));
}