C语言评委评分
- 提问者网友:空白
- 2021-03-11 14:22
- 二级知识专家网友:孤伤未赏
- 2021-03-11 14:29
#define N 3 //歌手人数struct sing
{
int final;
int flag;
}singer[N];
void main()
{
int i,j,flag=0;
int max=0,min=0,sum=0;
int score[M][N];
sing ss;
for (i=0;i<N;i++)
{
printf("请给第%d个选手打分\n",i+1);
int a = 0;
for (j=0;j<M;j++)
{
scanf("%d",&a);
score[i][j] = a;
}
max = min = score[i][1];
for (j=0;j<M;j++)
{
sum = sum + score[i][j];
if (score[i][j]>max)
{
max = score[i][j];
}
if (score[i][j]<min)
{
min = score[i][j];
}
}
singer[i].final = (sum - min - max) / (M-2);
singer[i].flag = i+1;
printf("去掉一个最高分,去掉一个最低分,第%d个选手的得分是%d分\n",i+1,singer[i].final);
sum = 0;
}
printf("选手最终成绩排名:\n");
for (i=0;i<N-1;i++)
{
if (singer[i].final<singer[i+1].final)
{
ss = singer[i];
singer[i] = singer[i+1];
singer[i+1] = ss;
}
}
for (i=0;i<N;i++)
{
printf("第%d名: %d号选手,成绩为:%d\n",i+1,singer[i].flag,singer[i].final);
}
}
- 1楼网友:青灯壁纸妹
- 2021-03-11 15:43
- 2楼网友:温柔刺客
- 2021-03-11 15:37
#include <stdlib.h> #include <stdio.h> #include <math.h> #define max_length 6
struct student { char name[10]; unsigned int ordernum; double scores[5]; };
void printinfo(student students[]) { for (unsigned int i=0;i<max_length;++i) { printf("学生姓名:%s\n",students[i].name); printf("学生出场顺序:%d\n",students[i].ordernum); printf("学生得分:"); for(unsigned int j=0;j<5;++j) { printf("%lf ",students[i].scores[j]); } printf("\n"); printf("\n"); } }
void inputstudent(student *stu) { printf("请输入学生姓名:"); scanf("%s",&stu->name); printf("请输入学生出场次序:"); scanf("%d",&stu->ordernum); printf("请输入5个评委分数,用空格隔开:");
for (unsigned int i=0;i<5;++i) { scanf("%lf",&stu->scores[i]); } } void main() { student students[max_length]; for(unsigned int i=0;i<max_length;++i) { printf("\n第%d个学生情况:\n",i+1); inputstudent(students[i]); }
printf("\n\n学生总体情况:\n"); printinfo(students); system("pause"); }