c언어 정렬이랑 if - else문좀 봐주시면감사하겠습니다.

skykingdom1의 이미지

#include <stdio.h>
 
#define Max_person 4
 
struct person
{
	char name[20];
	int kor, eng, math, total, num;
	double avg;
};
 
int main(void)
{
	struct person per[Max_person];
	struct person *p=per;
	int i;
 
	for(i=0; i<Max_person; i++)
	{
		printf("학번을 입력하세요 : ");
		scanf("%d", &p->num);
		printf("이름을 입력하세요 : ");
		scanf("%s", p->name);
		printf("국어점수 : ");
		scanf("%d", &p->kor);
		printf("영어점수 : ");
		scanf("%d", &p->eng);
		printf("수학점수 : ");
		scanf("%d", &p->math);
		p->total=p->kor + p->eng + p->math;
		p->avg=p->total/3.0;
		p++;
	}
	printf("***************************************************************\n");
	printf("\t번호\t이름\t국어\t영어\t수학\t총점\t평균\n");
	printf("***************************************************************\n");
	p=per;
	for(i=0; i<Max_person; i++)
	{
		printf("%3d\t%5s\t%3d\t%3d\t%3d\t%3d\t%3.2f\n", p->num, p->name, p->kor, p->eng, p->math, p->total, p->avg);
		p++;
	}
	printf("***************************************************************\n");
 
	return 0;
 
}

이렇게 짜봤는데..
맨 마지막줄에 정렬을 어떻게하면 딱딱 맞게 정렬이 되나요..?
그리고 여기에 등급을 if - else문으로 정하는게 맞나요..? 맞으면 어디에 들어가는게 제일 나은지좀 봐주시면 감사하겠슶니다.
File attachments: 
첨부파일 크기
Image icon 20140604_094734.png144.87 KB
세벌의 이미지

질문의 뜻을 모르겠습니다.
맨 마지막줄에 정렬을 어떻게하면 딱딱 맞게 정렬이 되나요..?
이 말씀의 뜻을 다른 말로 설명해주시면...

어떻게 하면 되는지는 고수분들께서 답해주실 겁니다.
그러나 무엇을 하려는 건지는 질문하시는 분이 잘 설명해주셔야 합니다.
그렇지 않으면 동문서답을 듣기 쉽습니다.