Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- typedef struct
- {
- int matr;
- int d;
- int m;
- int a;
- char nome[200];
- }Aluno;
- //Compara idade de a e b
- // @return 1: a > b 0: a = b -1: a < b
- int aluno_cpm(const Aluno* a, const Aluno* b);
- int main()
- {
- int n;
- int i,i2;
- Aluno turma[30];
- Aluno a;
- scanf("%d",&n);
- scanf("%d",&a.matr);
- scanf("%d",&a.d);
- scanf("%d",&a.m);
- scanf("%d",&a.a);
- scanf("%[^\n]",a.nome);
- turma[0] = a;
- for(i = 1; i < n; ++i)
- {
- scanf("%d",&a.matr);
- scanf("%d",&a.d);
- scanf("%d",&a.m);
- scanf("%d",&a.a);
- scanf("%[^\n]",a.nome);
- turma[i] = a;
- for(i2 = i; i2 > 0; --i2)
- {
- if(aluno_cpm(&turma[i2],&turma[i2-1]) < 0)
- {
- a = turma[i2];
- turma[i2] = turma[i2-1];
- turma[i2-1] = a;
- }
- }
- }
- for(i = 0; i < n; ++i)
- {
- printf("Matric.: %d Nome: %s Data Nasc.: %d/%d/%d\n",turma[i].matr
- ,turma[i].nome
- ,turma[i].d
- ,turma[i].m
- ,turma[i].a);
- }
- return 0;
- }
- int aluno_cpm(const Aluno* a, const Aluno* b)
- {
- int result = 0;
- if(a->a < b->a) result = 1;
- else if(a->a > b->a) result = -1;
- else if(a->m < b->m) result = 1;
- else if(a->m > b->m) result = -1;
- else if(a->d < b->d) result = 1;
- else if(a->d > b->d) result = -1;
- return result;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement