Advertisement
Guest User

Untitled

a guest
Oct 26th, 2016
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.74 KB | None | 0 0
  1. #include<stdio.h>
  2. #include<stdlib.h>
  3.  
  4. typedef struct{
  5.     int matricula;
  6.     char nome[20];
  7.     float media;
  8. }Aluno;
  9.  
  10. void incluir_registro(Aluno *);
  11. void imprimir_registro(Aluno *, int max);
  12. void ordenar_registro(Aluno *);
  13.  
  14. int main(){
  15.     int op, qtR = 0, aux;
  16.     Aluno *turma;
  17.  
  18.     while(1){
  19.         printf("Escolha uma das opções:\n");
  20.         printf("1) Incluir Registro\n");
  21.         printf("2) Imprimir Registros\n");
  22.         printf("3) Ordenar Registro\n");
  23.         printf("4) Sair\n");
  24.         scanf("%d", &op);
  25.         switch(op){
  26.             case 1:
  27.                 qtR++;
  28.                 turma = (Aluno *) realloc(turma, qtR * sizeof(Aluno));
  29.  
  30.                 if(!turma){
  31.                     printf("Memória não realocada!\n");
  32.                     exit(1);
  33.                 }
  34.                 aux = qtR - 1;
  35.                 incluir_registro(turma+aux);
  36.                 break;
  37.  
  38.             case 2:
  39.                 imprimir_registro(turma, qtR);
  40.                 break;
  41.  
  42.             case 3:
  43.  
  44.                 break;
  45.  
  46.             case 4:
  47.                 exit(1);
  48.  
  49.             default: printf("Opção inválida!\n");
  50.         }
  51.     }
  52.  
  53.     free(turma);
  54.     return 0;
  55. }
  56.  
  57. void incluir_registro(Aluno *v){
  58.     //printf("-- Cadastro nº %d --\n", n);
  59.     printf("Matricula: ");
  60.     scanf("%d", &v->matricula);
  61.     printf("Nome: ");
  62.     scanf(" %[^\n]s", v->nome);
  63.     printf("Media: ");
  64.     scanf("%f", &v->media);
  65. }
  66.  
  67. void imprimir_registro(Aluno *eita, int max){
  68.     int i;
  69.  
  70.     for (i = 0; i < max; i++) {
  71.         printf("matricula: %d\n", eita[i].matricula);
  72.         printf("nome: %s\n", eita[i].nome);
  73.         printf("media: %.2lf\n", eita[i].media);
  74.         printf("\n");
  75.     }
  76.     return;
  77. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement