Ir ao conteúdo

Barry Stinson

Membro Júnior
  • Posts

    2
  • Cadastrado em

  • Última visita

Tudo que Barry Stinson postou

  1. @KXSY Dev-C++ , ai no caso é o arquivo em .h para implementar a função, o .cpp está assim: Codigo : #include "filaenc.h" FILA *fi; FILA *fi2; int main(){ PACIENTE p; fi = cria_fila(); fi2 = cria_fila(); int i=0,num; printf ("Digite a quantidade de pacientes\n"); scanf ("%d", &num); while(i<num){ printf("\nDigite a idade, nome, sexo do paciente e informe se eh gravida - (0/1)\n"); scanf("%d",&p.idade); scanf("%s",&p.nome); scanf("%s",&p.sexo); scanf("%i",&p.gravida); if(p.idade > 60 || p.gravida == 1){ printf("\nFila1\n"); enfileira(fi, p); } else { printf("\nFila2\n"); enfileira(fi2, p); } i++; } printf("Fila1\n \n"); imprime_fila(fi); printf("Fila2\n \n"); imprime_fila(fi2); printf("Fila Geral \n"); // concatenar_fila(fi2,fi); // imprime_fila(fi2); return 0; } Essa parte abaixo em forma de comentário faz parte do .h , não havia colocado /* typedef struct{ char nome[150]; int idade; char sexo; short gravida; } PACIENTE; void imprime_fila(FILA *f){ if(fila_vazia(f)) printf("FILA VAZIA! "); NO *aux = f->ini; printf("INI <=|"); while (aux!=NULL){ printf("%s, %d anos, %s, %s|", aux->dados.nome, aux->dados.idade, (aux->dados.sexo=='F'?"Fem.":"Masc."), (aux->dados.gravida?"GEST":"NAO GEST")); aux=aux->prox; } printf("<= FIM\n"); } */
  2. Quero criar uma função pra concatenar duas filas mas está aparecendo o erro citado no titulo e problemas no ponteiro, como resolver? Eis o codigo: typedef struct no{ int dados; struct no *prox; } NO; typedef struct{ NO *ini; NO *fim; struct no *prox; }FILA; int fila_vazia(FILA *f){ if(f==NULL || f->ini==NULL) return 1; return 0; } FILA* cria_fila(){ FILA *fi = (FILA*) malloc(sizeof(FILA)); if(fi != NULL){ fi->fim = NULL; fi->ini = NULL; } return fi; } int concatenarfila(FILA *fi, FILA *fi2, FILA *fi3){ if(fila_vazia(fi) && fila_vazia(fi2)){ return 0; }else{ int x; fi3 = cria_fila(); for(x=fi->ini; x<=fi->fim; x++){ enfileira(fi3, fi.prox[x]); for(x=fi2.ini; x<=fi2.fim; x++){ enfileira(fi3, fi2.prox[x]); return 1; } } }

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...