Ir ao conteúdo
  • Cadastre-se
Tayron Leigh

Erro no if(op==3) {

Recommended Posts

Eu desenvolvi esse pequeno sistema

 

mais estou com dificuldade na parte 

 

if(op==3) {  

 

pois não aparece a compra da passagem  finalizada 

 

o resto ta dando certo o cadastro , e cadastro de viagem 

 

 

Segue o Código !  quem puder dar uma olhada ou me ajudar agradeço !!!

 

#include<stdio.h>

#include <string.h>

#include <stdlib.h>

#include <ctype.h>

#include <conio.h>

 

  struct Rodoviaria

{

    

int codigo;

int horapartida;

int preco;

int poltrona[44];

 

char destinoviagem[100];

char nomepassager[100];

char endereco[20];

char cpf[28];

char rg[16];

char tel[12];

char idade[100];

 

};

 

//função gravar

   void gravar(struct Rodoviaria a[1000],int fim)

  {

      FILE *arq;

      int teste,i;

      arq = fopen("arquivo.txt","wb"); // w = cria arquivo, b = modo binario

       if(arq != NULL)

       {

          for(i=0;i<fim;i++)

          {

              teste = fwrite(&a,sizeof(struct Rodoviaria),1,arq);

              if (teste !=1) // retorna 1 gravou e 0 senao gravou

              {

                 printf("erro ao salvar"); 

                 getch();                 

              }

          } 

            fclose(arq);  

       }  

          else 

          {         

             printf("erro ao abrir arquivo");

          }  

  }       

 

 

//função carregar     

 int carregar(struct Rodoviaria a[1000]) // abre arquivo e carrega no vetor

 {

    FILE *arq;  

    int teste,percorre=0;

    struct Rodoviaria registro;

      

    arq = fopen("arquivo.txt","rb");

    if(arq != NULL)

    {

       while (!feof(arq)) // diferente do fim do arquivo?

       {

             teste = fread(&registro,sizeof(struct Rodoviaria),1,arq);      

             if (teste ==1) // se conseguiu ler

             { 

                a[percorre] = registro;     

                percorre++;        

             }

       }    

           fclose(arq);  

           

    }        

      return percorre;

              

}          

 

int main ()

 

{

 

struct Rodoviaria vet[1000];  

   int ultimo=0, op=0,i,j,x,codonibus=0,qtd=0,onibus[100];    

   char nomedestino[100];

   

   //carrega vetor

   for (i=0;i<44;i++)

   {

 

   qtd++;

     onibus = qtd;

 

 }

 

 while(op !=4)

     {   

 

           ultimo = carregar(vet); //abre arquivo e carrega para o vetor 

           printf ("======================================MENU======================================\n");

  printf ("1 - Cadastrar passageiro :\n");

           printf ("3 - Cadastrar viagem :\n");

           printf ("3 - Comprar passagem :\n");

           printf ("4 - Listar Lista de passageiros :\n");

           printf ("5 - Sair :\n\n");

           fflush (stdin);

           scanf ("%d",&op);    

           fflush (stdin);   

           

           

           

            if(op==1)

              {

 

              printf("Digite o Nome do Passageiro:");

              scanf ("%d",&vet[ultimo].codigo);

 fflush(stdin);

 fgets (vet[ultimo].nomepassager,100,stdin);

 printf("Digite o Endereco:");

 fflush(stdin);

 fgets(vet[ultimo].endereco,20,stdin);

 printf("Digite o Telefone:");

 fflush(stdin);

 fgets(vet[ultimo].tel,12,stdin);

 printf("Digite o CPF:");

 fflush(stdin);

 fgets(vet[ultimo].cpf,28,stdin);

 printf("Digite o RG:");

 fflush(stdin);

 fgets(vet[ultimo].rg,16,stdin);

 printf("Digite a Idade:");

 fflush(stdin);

 fgets(vet[ultimo].idade,100,stdin);

 ultimo++;

              gravar(vet,ultimo); //função para gravar vetor no arquivo .txt

              onibus = vet[ultimo].codigo;

              printf("\n");

              printf("Cadastro Realizado com sucesso !\n\n");

              system("pause");

              

          }

             

            if(op==2)

              printf("Informe Codigo do Onibus:");

              scanf ("%d",&vet[ultimo].codigo);  

              printf("Informe Destino de Viagem :");      

              fflush(stdin);

              fgets (vet[ultimo].destinoviagem,100,stdin);

              fflush(stdin);           

              printf("Informe Horario de Partida da Viagem:");

              scanf ("%d",&vet[ultimo].horapartida);

              ultimo++;

              gravar(vet,ultimo); //função para gravar vetor no arquivo .txt

              onibus = vet[ultimo].codigo;

              printf("\n");

              printf("Cadastro Realizado com sucesso !\n\n");

              system("pause");

              

          if(op==3)

           { 

                                

              printf("Informe Destino de Viagem :");

              fflush(stdin);

              fgets(nomedestino,100,stdin);

              fflush(stdin);

 ultimo++;

              gravar(vet,ultimo); //função para carregar vetor no arquivo .txt

              onibus = vet[ultimo].codigo;       

              printf("\n");

                         

              for(i=0;i<ultimo;i++)        

              {

                  x = strcmp(vet.destinoviagem,nomedestino); 

                  

                  if (x == 0)

                  {

                     printf ("=======================\n");   

                     printf("Codigo do Onibus :%d\n",vet.codigo);

                     printf("Horario de Partida :%d\n",vet.horapartida);

                     printf("\n");  

                  }   

              }          

                                  

              printf("Informe o codigo do onibus desejado:");

              scanf("%d",&codonibus);  

              

               

              for(i=0;i<ultimo;i++) // laço no arquivo

              {   

                  if(vet.codigo == codonibus) // se codigo do arquivo == codigo digitado

                  {

                      printf("\n");              

                      for(i=0;i<44;i++)

                      {} 

                         

                  }    

              }    

              printf("\n"); 

                

              system("pause");

          }

          }

          }

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

×