當前位置:首頁 » 編程語言 » 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));
}