Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- int cauda = 0;
- int teto = 0;
- typedef struct listaFila
- {
- char nome[100];
- int idade;
- int dia;
- int mes;
- int ano;
- }ponteiro;
- void mostraLista(ponteiro * pontoCondutor)
- {
- int leitor;
- if (teto != 0)
- {
- for(leitor = 0;leitor < teto;leitor++)
- {
- printf("Id:%d\n",leitor+1);
- printf("-------------------------------------------\n");
- printf("Nome:%s\n",pontoCondutor[leitor].nome);
- printf("Idade:%d\n",pontoCondutor[leitor].idade);
- printf("Data de Nascimento:%d/%d/%d\n",pontoCondutor[leitor].dia,pontoCondutor[leitor].mes,pontoCondutor[leitor].ano);
- printf("-------------------------------------------\n");
- }
- printf("Tamanho do teto:%d\n",teto);
- printf("Tamanho da cauda:%d\n",cauda);
- }else
- {
- printf("Nao tem nada para imprimir favor adicione um nome na lista\n");
- }
- }
- void adicionaDado(ponteiro * pontoCondutor, int nTotal)
- {
- int x = 0;
- x = x + 1;
- char **tempNam;
- tempNam = malloc (x * sizeof(char*));
- int leitor;
- int tempIdade;
- int tempDia;
- int tempMes;
- int tempAno;
- if(teto != nTotal)
- {
- for(leitor = 0;leitor < x;leitor++)
- {
- tempNam[leitor] = malloc(100);
- printf("Digite o Nome do Individuo\n");
- fflush(stdin);
- fgets(tempNam[leitor],100,stdin);
- strcpy(pontoCondutor[teto].nome,tempNam[leitor]);
- }
- printf("Digite a Idade do Individuo\n");
- scanf("%d",&tempIdade);
- printf("Digite o Dia de Nascimento do Individuo\n");
- scanf("%d",&tempDia);
- printf("Digite o Mes de Nascimento do Individuo\n");
- scanf("%d",&tempMes);
- printf("Digite o Ano de Nascimento do Individuo\n");
- scanf("%d",&tempAno);
- }else
- {
- printf("Fila cheia parceiro,esvazie ela se quiser colocar mais elementos\n");
- }
- pontoCondutor[teto].idade = tempIdade;
- pontoCondutor[teto].dia = tempDia;
- pontoCondutor[teto].mes = tempMes;
- pontoCondutor[teto].ano = tempAno;
- teto = teto + 1;
- }
- void retiraDado(ponteiro * pontoCondutor)
- {
- if((cauda != teto)&&(loopC !=loopT)){
- strcpy(pontoCondutor[cauda].nome,"\n");
- pontoCondutor[cauda].idade = 0;
- pontoCondutor[cauda].dia = 0;
- pontoCondutor[cauda].mes = 0;
- pontoCondutor[cauda].ano = 0;
- cauda = cauda + 1;
- }
- if ((cauda !=teto)&&(loopC == loopT)){
- strcpy(pontoCondutor[cauda].nome,"\n");
- pontoCondutor[cauda].idade = 0;
- pontoCondutor[cauda].dia = 0;
- pontoCondutor[cauda].mes = 0;
- pontoCondutor[cauda].ano = 0;
- cauda = cauda + 1;
- }else
- {
- printf("A Fila esta vazia cara,encha ela ou limpe ela");
- }
- }
- void limpaTudo (ponteiro * pontoCondutor)
- {
- strcpy(pontoCondutor[teto].nome,"\n");
- pontoCondutor[teto].idade = 0;
- pontoCondutor[teto].dia = 0;
- pontoCondutor[teto].mes = 0;
- pontoCondutor[teto].ano = 0;
- cauda = 0;
- teto = 0;
- loopC = 1;
- loopT = 1;
- }
- int main ()
- {
- int qtd,resp;
- printf("Dite um valor\n");
- scanf("%d",&qtd);
- struct listaFila *pontoCondutor;
- pontoCondutor = malloc(qtd * sizeof(int));
- do
- {
- system("cls");
- printf("Escolha uma opcao\n");
- printf("[1] - Insira um Individuo na Lista\n");
- printf("[2] - Remova o Individuo da Lista\n");
- printf("[3] - Mostra a Lista com o nome dos Individuos\n");
- printf("[4] - Apaga todos os dados da Lista\n");
- printf("[5] - Termina o Programa\n");
- printf("A sua resposta:");
- scanf("%d",&resp);
- switch(resp)
- {
- case 1:
- adicionaDado(pontoCondutor,qtd);
- verifica(qtd);
- break;
- case 2:
- retiraDado(pontoCondutor);
- verifica(qtd);
- break;
- case 3:
- mostraLista(pontoCondutor);
- system("pause");
- break;
- case 4:
- limpaTudo(pontoCondutor);
- printf("Lista Limpa");
- system("pause");
- break;
- case 5:
- printf("o Programa terminara aqui");
- break;
- }
- }while(resp != 5);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement