输入20个同学成绩到数组cj中,统计其中的最高分和最低分,以及20名同学的总分和平均分
#include<stdio.h>
int* BUBBLE_ALGORITHM(int SWAP_ARRAY[],int length)
//第一个参数表示需要比较的数组,第二个参数表示数组的长度
{
int Ditias = 1;
for(;length > 0 ;length--)
{
if(Ditias == 0) return SWAP_ARRAY ;
//若没有再进行比较,说明数组已排列,退出程序
Ditias = 0;
for(int i = 0 ;i < length - 1 ;i++)
if(SWAP_ARRAY[i] > SWAP_ARRAY[i+1])
{
Ditias = 1;
int exchange = SWAP_ARRAY[i];
SWAP_ARRAY[i] = SWAP_ARRAY[i+1];
SWAP_ARRAY[i+1] = exchange;
}
}
return SWAP_ARRAY;
}
int main()
{
int cj[20] = {0};
{
for(int i=0;i<20;i++){
printf("请输入第%d位同学的成绩:\n",i+1);
fflush(stdin);
scanf("%d",&cj[i]);
}
}
int len = sizeof(cj) / sizeof(cj);
int *Temporarily = BUBBLE_ALGORITHM(cj,len);
int Total_score=0;
for(int i=0;i<20;i++){
Total_score=Total_score+Temporarily[i];
}
printf("总分:%d分\n",Total_score);
printf("平均分:%d分\n",Total_score/20);
printf("分数总览:\n");
for(int i=19;i>=0;i--){
int j=0;
printf("第%d名%d分\n",j+1,Temporarily[i]);
j++;
}
return 0;
}