nicolaubalbino

Untitled

Mar 5th, 2016
287
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. struct _dadosAluno {
  5.     int ra;
  6.     char nome[64];
  7. };
  8.  
  9. struct _dadosDisciplina {
  10.     int codigo;
  11.     char nome[64];
  12. };
  13.  
  14. void imprimirListaDeAlunos(struct _dadosAluno *p);
  15. void imprimirListaDeDisciplinas(struct _dadosDisciplina *p);
  16.  
  17. int main() {
  18.     struct _dadosAluno dadosAluno[100];
  19.     struct _dadosDisciplina dadosDisciplina[100];
  20.    
  21.     int menu, quantidadeAluno = 0, quantidadeDisciplina = 0;
  22.    
  23.     do {
  24.         printf("1 - Cadastrar alunos (um por vez): nome e RA\n");
  25.         printf("2 - Cadastrar disciplinas (uma por vez): nome e codigo\n");
  26.         printf("3 - Realizar a matricula dos alunos cadastrados em disciplinas\n");
  27.         printf("4 - Imprimir a lista de alunos\n");
  28.         printf("5 - Imprimir a lista de disciplinas\n");
  29.         printf("6 - Imprimir a lista de alunos matriculados na disciplina\n");
  30.         printf("7 - Sair\n");
  31.         printf("Digite a operacao desejada: ");
  32.         scanf("%d", &menu);
  33.        
  34.         switch(menu) {
  35.             case 1:
  36.                 printf("Digite o nome do aluno: ");
  37.                 fflush(stdin);
  38.                 scanf("%s", dadosAluno[quantidadeAluno].nome);
  39.                
  40.                 printf("Digite o RA do aluno: ");
  41.                 scanf("%d", &dadosAluno[quantidadeAluno].ra);
  42.                
  43.                 quantidadeAluno++;
  44.                
  45.                 printf("Cadastro realizado com sucesso!\n");
  46.                
  47.                 break;
  48.                
  49.             case 2:
  50.                 printf("Digite o nome da disciplina: ");
  51.                 fflush(stdin);
  52.                 scanf("%s", dadosDisciplina[quantidadeDisciplina].nome);
  53.                
  54.                 printf("Digite o codigo da disciplina: ");
  55.                 scanf("%d", &dadosDisciplina[quantidadeDisciplina].codigo);
  56.                
  57.                 quantidadeDisciplina++;
  58.                
  59.                 printf("Cadastro realizado com sucesso!\n");
  60.                
  61.                 break;
  62.                
  63.             case 3:
  64.                
  65.                 break;
  66.                
  67.             case 4:
  68.                 for (int i = 0; i < quantidadeAluno; i++) {
  69.                     imprimirListaDeAlunos(&dadosAluno[i]);
  70.                 }
  71.                 break;
  72.                
  73.             case 5:
  74.                 for (int i = 0; i < quantidadeDisciplina; i++) {
  75.                     imprimirListaDeDisciplinas(&dadosDisciplina[i]);
  76.                 }
  77.                 break;
  78.                
  79.             default:
  80.                 printf("Opcao invalida!\n");
  81.                 break;
  82.         }
  83.        
  84.         system("PAUSE");
  85.         system("clear");
  86.     } while (menu != 7 || menu > 8);
  87.    
  88.     return 0;
  89. }
  90.  
  91. void imprimirListaDeAlunos(struct _dadosAluno *p) {
  92.     printf("Aluno %d: %s\n", p -> ra, p -> nome);
  93. }
  94.  
  95. void imprimirListaDeDisciplinas(struct _dadosDisciplina *p) {
  96.     printf("Disciplina %d: %s\n", p -> codigo, p -> nome);
  97. }
RAW Paste Data