Advertisement
justaCprogrammer

dataManipulation1.c

Jan 1st, 2022
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.31 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4.  
  5. int cauda = 0;
  6. int teto = 0;
  7.  
  8. typedef struct listaFila
  9. {
  10. char nome[100];
  11. int idade;
  12. int dia;
  13. int mes;
  14. int ano;
  15. }ponteiro;
  16.  
  17. void mostraLista(ponteiro * pontoCondutor)
  18. {
  19. int leitor;
  20. if (teto != 0)
  21. {
  22. for(leitor = 0;leitor < teto;leitor++)
  23. {
  24. printf("Id:%d\n",leitor+1);
  25. printf("-------------------------------------------\n");
  26. printf("Nome:%s\n",pontoCondutor[leitor].nome);
  27. printf("Idade:%d\n",pontoCondutor[leitor].idade);
  28. printf("Data de Nascimento:%d/%d/%d\n",pontoCondutor[leitor].dia,pontoCondutor[leitor].mes,pontoCondutor[leitor].ano);
  29. printf("-------------------------------------------\n");
  30. }
  31. printf("Tamanho do teto:%d\n",teto);
  32. printf("Tamanho da cauda:%d\n",cauda);
  33. }else
  34. {
  35. printf("Nao tem nada para imprimir favor adicione um nome na lista\n");
  36. }
  37. }
  38.  
  39.  
  40.  
  41. void adicionaDado(ponteiro * pontoCondutor, int nTotal)
  42. {
  43. int x = 0;
  44. x = x + 1;
  45. char **tempNam;
  46. tempNam = malloc (x * sizeof(char*));
  47. int leitor;
  48. int tempIdade;
  49. int tempDia;
  50. int tempMes;
  51. int tempAno;
  52. if(teto != nTotal)
  53. {
  54. for(leitor = 0;leitor < x;leitor++)
  55. {
  56. tempNam[leitor] = malloc(100);
  57. printf("Digite o Nome do Individuo\n");
  58. fflush(stdin);
  59. fgets(tempNam[leitor],100,stdin);
  60. strcpy(pontoCondutor[teto].nome,tempNam[leitor]);
  61.  
  62. }
  63. printf("Digite a Idade do Individuo\n");
  64. scanf("%d",&tempIdade);
  65. printf("Digite o Dia de Nascimento do Individuo\n");
  66. scanf("%d",&tempDia);
  67. printf("Digite o Mes de Nascimento do Individuo\n");
  68. scanf("%d",&tempMes);
  69. printf("Digite o Ano de Nascimento do Individuo\n");
  70. scanf("%d",&tempAno);
  71. }else
  72. {
  73. printf("Fila cheia parceiro,esvazie ela se quiser colocar mais elementos\n");
  74. }
  75.  
  76.  
  77. pontoCondutor[teto].idade = tempIdade;
  78. pontoCondutor[teto].dia = tempDia;
  79. pontoCondutor[teto].mes = tempMes;
  80. pontoCondutor[teto].ano = tempAno;
  81. teto = teto + 1;
  82. }
  83.  
  84. void retiraDado(ponteiro * pontoCondutor)
  85. {
  86. if((cauda != teto)&&(loopC !=loopT)){
  87. strcpy(pontoCondutor[cauda].nome,"\n");
  88. pontoCondutor[cauda].idade = 0;
  89. pontoCondutor[cauda].dia = 0;
  90. pontoCondutor[cauda].mes = 0;
  91. pontoCondutor[cauda].ano = 0;
  92. cauda = cauda + 1;
  93. }
  94. if ((cauda !=teto)&&(loopC == loopT)){
  95. strcpy(pontoCondutor[cauda].nome,"\n");
  96. pontoCondutor[cauda].idade = 0;
  97. pontoCondutor[cauda].dia = 0;
  98. pontoCondutor[cauda].mes = 0;
  99. pontoCondutor[cauda].ano = 0;
  100. cauda = cauda + 1;
  101. }else
  102. {
  103. printf("A Fila esta vazia cara,encha ela ou limpe ela");
  104. }
  105. }
  106.  
  107. void limpaTudo (ponteiro * pontoCondutor)
  108. {
  109. strcpy(pontoCondutor[teto].nome,"\n");
  110. pontoCondutor[teto].idade = 0;
  111. pontoCondutor[teto].dia = 0;
  112. pontoCondutor[teto].mes = 0;
  113. pontoCondutor[teto].ano = 0;
  114.  
  115. cauda = 0;
  116. teto = 0;
  117. loopC = 1;
  118. loopT = 1;
  119. }
  120.  
  121. int main ()
  122. {
  123. int qtd,resp;
  124. printf("Dite um valor\n");
  125. scanf("%d",&qtd);
  126. struct listaFila *pontoCondutor;
  127. pontoCondutor = malloc(qtd * sizeof(int));
  128. do
  129. {
  130. system("cls");
  131. printf("Escolha uma opcao\n");
  132. printf("[1] - Insira um Individuo na Lista\n");
  133. printf("[2] - Remova o Individuo da Lista\n");
  134. printf("[3] - Mostra a Lista com o nome dos Individuos\n");
  135. printf("[4] - Apaga todos os dados da Lista\n");
  136. printf("[5] - Termina o Programa\n");
  137. printf("A sua resposta:");
  138. scanf("%d",&resp);
  139. switch(resp)
  140. {
  141.  
  142. case 1:
  143.  
  144. adicionaDado(pontoCondutor,qtd);
  145. verifica(qtd);
  146. break;
  147.  
  148. case 2:
  149. retiraDado(pontoCondutor);
  150. verifica(qtd);
  151. break;
  152.  
  153. case 3:
  154. mostraLista(pontoCondutor);
  155. system("pause");
  156. break;
  157.  
  158. case 4:
  159. limpaTudo(pontoCondutor);
  160. printf("Lista Limpa");
  161. system("pause");
  162. break;
  163.  
  164. case 5:
  165.  
  166. printf("o Programa terminara aqui");
  167. break;
  168. }
  169. }while(resp != 5);
  170. }
  171.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement