江湖救急!!!! 大佬 这个题咋搞

#include<stdio.h>
char xuehang[5][5]   , name[5][20],t1[1][20],t2[1][20];
int chengji[5][4], jun[5], cheng[5],t ,t3;
void  main()
{
    printf("请依次输入姓名,学号,分数");
    for(int  i = 0;  i  <  5  ;  i++)
    {
        scanf("%s%s%d",  &name[i] ,&xuehang[i]  ,&chengji[i]);
    }
    for(int  i = 0;  i  <  5  ;  i++)
    {
        t  =  0;
        for(int  j = 0;  i  <  4;  j++)
        {
            t  =  t +chengji[i][j];
        }
        cheng[i]  =  t;
    }
    for(int  i = 0;  i  <  5  ;  i++)
    {
        jun[i]  =  cheng[i]/4;
    }

    for(int  i = 0;  i  <  4  ;  i++)
    {
         for(int  j = 0;  i  <  5  ;  j++)
         {
             if(cheng[i]  <  cheng[j])
             {
                 t  =  cheng[i];
                cheng[i] =cheng[j];
                 cheng[j]  =  t;//)
                 t1[1] = name[i];
           name[i]=name[j];
                 name[j] =  t1[1];//)
                  t2[1]  =  xuehang[i];
               xuehang[i]=xuehang[j];
                 xuehang[j]  =  t2[1];//)
                 t3  =  jun[i];
                jun[i]=jun[j];
                 jun[j] =  t3;//)

             }
         }
    }

  for(int  i = 0;  i  <  5  ;  i++)
  {
      printf("%s %s %d %d" ,name[i],xuehang[i],jun[i],cheng[i]);
  }
}
//这是一个输入姓名 学号 四门课的成绩,求均值,总分 ,并以成绩的高低输出姓名 学号 总分 均值的程序;

 

代码如下,运行通过,如有帮助,请采纳一下,谢谢。

#include <stdio.h>
#include <algorithm>
using namespace std;
char xuehang[5][5], name[5][20],t1[1][20],t2[1][20];
int chengji[5][4], jun[5], cheng[5],t ,t3;
void  main()
{
	printf("请依次输入姓名,学号,分数\n");
	for(int  i = 0;  i  < 5  ;  i++)
	{
		scanf("%s %s %d %d %d %d", &name[i] ,&xuehang[i] ,&chengji[i][0],&chengji[i][1],&chengji[i][2],&chengji[i][3]);
	}

	//计算均值
	for (int i = 0 ; i < 5; i++)
	{
		int sum = 0;
		for (int j = 0; j < 4;j++)
		{
			sum += chengji[i][j];
		}
		cheng[i] = sum;  //所有成绩的和
		jun[i] = sum /4; //平均成绩
	}

	int index1[5] = {0};
	int index2[5] = {0};
	for (int i = 0; i < 5; i++)
	{
		index1[i] = i;
		index2[i] = i;
	}
	//以总成绩排序输出
	sort(index1,index1+5,[&](const int& a, const int& b) {
		return (cheng[a] > cheng[b]);
	});
	printf("按总成绩从高到底排序:学号,姓名,总成绩:\n");
	for (int i = 0; i < 5; i++)
	{
		int ss = index1[i];
		printf("%s,%s,%d\n",xuehang[ss],name[ss],cheng[ss]);
	}
	
	//按平均分排序输出
	sort(index2,index2+5,[&](const int& a, const int& b) {
		return (jun[a] > jun[b]);
	});
	printf("按平均成绩从高到底排序:学号,姓名,总成绩:\n");
	for (int i = 0; i < 5; i++)
	{
		int ss = index2[i];
		printf("%s,%s,%d\n",xuehang[ss],name[ss],jun[ss]);
	}


	getchar();
	return ;
	
}