输入名字与成绩排序

    科技2024-07-11  75

    #include "stdio.h" #include "string.h" #define N 5 ppp() { printf("----------------------------------\n"); } void input(int score[N][3],char name[N][10],float sum[],float avg[]) { int i,j; for(i=0;i<N;i++) { printf("请输入第%d位同学的名字及三门成绩:\n",i+1); scanf("%s",name[i]); for(j=0;j<3;j++) { scanf("%d",&score[i][j]); sum[i]=sum[i]+score[i][j]; avg[i]=sum[i]/3.0; } } } void px(int score[][3],float sum[],float avg[],char name[][10]) { float t; int i,j; char nn[10]; for(i=0;i<N-1;i++) for(j=i+1;j<5;j++) if(sum[i]<sum[j]) { t=sum[i];sum[i]=sum[j];sum[j]=t; t=avg[i];avg[i]=avg[j];avg[j]=t; t=score[i][0];score[i][0]=score[j][0];score[j][0]=t; t=score[i][1];score[i][1]=score[j][1];score[j][1]=t; t=score[i][2];score[i][2]=score[j][2];score[j][2]=t; strcpy(nn,name[i]);strcpy(name[i],name[j]);strcpy(name[j],nn); } } void print(int score[N][3],char name[N][10],float sum[],float avg[]) { int i,j; ppp(); printf("输出排列后五位童鞋的三门成绩:\n"); ppp(); printf("序号\t姓名\t课1\t课2\t课3\t总分\t平均分\n"); for(i=0;i<N;i++) { printf("%d:\t",i+1); printf("%s\t",name[i]); for(j=0;j<3;j++) printf("%d\t",score[i][j]); printf("%.0f\t%.1f\t",sum[i],avg[i]); printf("\n"); } ppp(); } main() { int i,j; int score[N][3],t; char name[N][10],nn[10]; float sum[N]={0},avg[N]; input(score,name,sum,avg); px(score,sum,avg,name); print(score,name,sum,avg); }
    Processed: 0.010, SQL: 8