Ir ao conteúdo
  • Cadastre-se

Erro no if(op==3) {


Tayron Leigh

Posts recomendados

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");

          }

          }

          }

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

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...