Sort 里面的printf 的部分 如果不像答案那样 多定义一个打印分数的函数 可以怎么简化啊??
#include <stdio.h>
int Sumscore(int score[])
{
int i;
int sum=0;
for(i=0;i<10;i++)
{
sum+=score[i];
}
return sum;
}
int Maxscore(int score[])
{
int i;
int max=-1;
for(i=0;i<10;i++)
{
if(score[i]>max)
max=score[i];
}
return max;
}
int Minscore(int score[])
{
int i;
int min=100;
for(i=0;i<10;i++)
{
if(score[i]<min)
min=score[i];
}
return min;
}
int Averlscore(int score[])
{
int i;
int averl;
int sum=0;
for(i=0;i<10;i++)
{
sum+=score[i];
}
averl=sum/10;
return averl;
}
void Sort(int score[])
{
int i, j ;
for(i=8;i>=0;i--)
{
for(j=0;j<=i;j++)
{
if(score[j]<score[j+1])
{
int temp;
temp=score[j];
score[j]=score[j+1];
score[j+1]=temp;
}
}
}
printf("第一名 %d分\n",score[0]);
printf("第二名 %d分\n",score[1]);
printf("第三名 %d分\n",score[2]);
printf("第四名 %d分\n",score[3]);
printf("第五名 %d分\n",score[4]);
printf("第六名 %d分\n",score[5]);
printf("第七名 %d分\n",score[6]);
printf("第八名 %d分\n",score[7]);
printf("第九名 %d分\n",score[8]);
printf("第十名 %d分\n",score[9]);
}
int main()
{
int i,sum,max,min,averl;
int score[10]={1,98,56,63,82,79,81,99,66,84};
sum=Sumscore(score);
max=Maxscore(score);
min=Minscore(score);
averl=Averlscore(score);
printf("本次成绩总分为:%d分\n",sum);
printf("本次最高成绩为:%d分\n",max);
printf("本次最低成绩为:%d分\n",min);
printf("本次平均成绩为:%d分\n",averl);
printf(" 本 次 考 试 的 排 名 为 \n");
printf("**************************************\n");
Sort(score);
return 0;
}