Ir ao conteúdo
  • Cadastre-se

Def

Membro Pleno
  • Posts

    85
  • Cadastrado em

  • Última visita

Tudo que Def postou

  1. @herbertbahia Assim? scanf(info.modelo,aux) ainda persistiu o erro, tentei com scanf("%s",info.modelo); mas também continuou o erro #include <stdio.h> #include <stdlib.h> #include <string.h> //dados cadastrais do veiculo struct cad_veiculo{ char placa[10]; int modelo; char marca[20]; char cor[30]; char ano[50]; }; int main(void){ char aux[200]; struct cad_veiculo info; int opcao; switch(opcao){ case 2: system("cls"); printf("Informe o numero da placa: "); placa: fflush(stdin); gets(aux); if (strlen(aux) < 7){ printf("erro quantidade de digitos menor do que o correto\n"); printf("Digite novamente: "); goto placa; break; } else if (strlen(aux) > 7){ printf("erro quantidade de digitos maior do que o correto\n"); printf("Digite novamente: "); goto placa; break; } else{ strcpy(info.placa,aux); } printf("Informe o modelo do veiculo: "); modelo: fflush(stdin); gets(aux); if (strlen(aux) < 17){ printf("erro quantidade de digitos menor do que o correto\n"); printf("digite novamente: "); goto modelo; break; } else if (strlen(aux) > 17){ printf("erro quantidade de digitos maior do que o correto\n"); printf("digite novamente: "); goto modelo; break; } else{ scanf(info.modelo,aux); } printf("Informe a marca do veiculo: "); gets(info.marca); system("pause"); printf("Informe a cor do veiculo: "); gets(info.cor); system("pause"); printf("Informe o ano do veiculo: "); gets(info.ano); system("pause"); break; }
  2. @Mauro Britivaldo Sim, já mudei isso adicionado 34 minutos depois @arfneto Eu fiz tudo certinho e ainda tá dando esse erro "error: expected declaration or statement at end of input" na linha 69 que é a parte final do terminal "}" sabe o que pode ser? ta dizendo que não declarei a função parece #include <stdio.h> #include <stdlib.h> #include <string.h> //dados cadastrais do veiculo struct cad_veiculo{ char placa[10]; int modelo; char marca[20]; char cor[30]; char ano[50]; }; int main(void){ char aux[200]; struct cad_veiculo info; int opcao; switch(opcao){ case 2: system("cls"); printf("Informe o numero da placa: "); placa: fflush(stdin); gets(aux); if (strlen(aux) < 7){ printf("erro quantidade de digitos menor do que o correto\n"); printf("Digite novamente: "); goto placa; break; } else if (strlen(aux) > 7){ printf("erro quantidade de digitos maior do que o correto\n"); printf("Digite novamente: "); goto placa; break; } else{ strcpy(info.placa,aux); } printf("Informe o modelo do veiculo: "); modelo: fflush(stdin); gets(aux); if (strlen(aux) < 17){ printf("erro quantidade de digitos menor do que o correto\n"); printf("digite novamente: "); goto modelo; break; } else if (strlen(aux) > 17){ printf("erro quantidade de digitos maior do que o correto\n"); printf("digite novamente: "); goto modelo; break; } else{ strcpy(info.modelo,aux); } printf("Informe a marca do veiculo: "); gets(info.marca); system("pause"); printf("Informe a cor do veiculo: "); gets(info.cor); system("pause"); printf("Informe o ano do veiculo: "); gets(info.ano); system("pause"); break; }
  3. @arfneto @herbertbahia Sim, eu tentei com a estrutura do cadastro do cliente mas não deu certo kkkk acho que fiz algo de errado só não sei bem o que. Dá uma olhada #include <stdio.h> #include <stdlib.h> #include <string.h> //dados cadastrais do cliente struct cad_cliente{ char nome[10]; int idade; char CPF_CNPJ[20]; char CNH[30]; char Endereco[50]; }; int main(void){ char aux[200]; struct cad_cliente info; int opcao; while(1){ system("cls"); printf("-----------------------------------------\n"); printf("\tCONTROLE DE ESTACIONAMENTO\n"); printf("-----------------------------------------\n\n"); printf("1- Cadastrar Cliente\n"); printf("\n2- Cadastrar Veiculo\n"); printf("\n3- Listar veiculos cadastrados\n"); printf("\n4- Creditos\n"); printf("\n5- Sair\n"); printf("\nOpcao: "); scanf("%d",&opcao); switch(opcao){ case 1: system("cls"); printf("Informe o nome do cliente: "); fflush(stdin); gets(info.nome); printf("Informe a idade do cliente: "); scanf("%d", &info.idade); printf("Informe o CPF/CNPJ do cliente: "); cpf: fflush(stdin); gets(aux); if (strlen(aux) < 11){ printf("erro quantidade de digitos menor do que o correto\n"); printf("Digite novamente: "); goto cpf; break; } else if (strlen(aux) > 11){ printf("erro quantidade de digitos maior do que o correto\n"); printf("Digite novamente: "); goto cpf; break; } else{ strcpy(info.CPF_CNPJ,aux); } printf("Informe o número do CNH do cliente: "); cnh: fflush(stdin); gets(aux); if (strlen(aux) < 11){ printf("erro quantidade de digitos menor do que o correto\n"); printf("digite novamente: "); goto cnh; break; } else if (strlen(aux) > 11){ printf("erro quantidade de digitos maior do que o correto\n"); printf("digite novamente: "); goto cnh; break; } else{ strcpy(info.CNH,aux); } printf("Informe o endereco do cliente: "); gets(info.Endereco); system("pause"); break; } } } //dados cadastrais do veiculo struct cad_veiculo{ char placa[10]; int modelo; char marca[20]; char cor[30]; char Ano[50]; }; char aux[200]; struct cad_veiculo info; int opcao; switch(opcao){ case 2: system("cls"); printf("Informe o numero da placa: "); placa: fflush(stdin); gets(aux); if (strlen(aux) < 7){ printf("erro quantidade de digitos menor do que o correto\n"); printf("Digite novamente: "); goto placa; break; } else if (strlen(aux) > 7){ printf("erro quantidade de digitos maior do que o correto\n"); printf("Digite novamente: "); goto placa; break; } else{ strcpy(info.placa,aux); } printf("Informe o modelo do veiculo: "); modelo: fflush(stdin); gets(aux); if (strlen(aux) < 17){ printf("erro quantidade de digitos menor do que o correto\n"); printf("digite novamente: "); goto modelo; break; } else if (strlen(aux) > 17){ printf("erro quantidade de digitos maior do que o correto\n"); printf("digite novamente: "); goto modelo; break; } else{ strcpy(info.modelo,aux); } printf("Informe a marca do veiculo: "); gets(info.marca); system("pause"); printf("Informe a cor do veiculo: "); gets(info.marca); system("pause"); printf("Informe o ano do veiculo: "); gets(info.Endereco); system("pause"); break; }
  4. @herbertbahia cara você me ajudou demais você não tem noção. Agradeço muito por você ter se disponibilizado para me ajudar, você é muito inteligente. Agora que finalizei a parte do cadastro do cliente, tem como eu usar o mesmo procedimento para fazer o cadastro do veículo com aqueles mesmo códigos só que alterando os nomes como "nome_placa"??
  5. @herbertbahia precisa de acesso pra acessar o link, mas olha a print que enviei. Eu usei o \n mas não deu certo
  6. @herbertbahia mas eu utilizei o \n no digite novamente olha na imagem, eu teria que colocar o \n no goto também?
  7. @herbertbahia ficou certinho agora, mas quando eu digito o CPF ele aparece pra digitar em baixo, como faço pra deixar pra digitar ele do lado? Exemplo: Digite novamente: 08954987168
  8. @herbertbahia como ficaria com o while, sabe me informar? ou goto se preferir, vai me ajudar demaaais preciso entregar esse trabalho até terça então to correndo contra o tempo kkkk
  9. @Mauro Britivaldo isso tudo é muito novo pra mim ainda, eu tava fazendo com a estrutura que o @herbertbahia tava me ensinando e tava indo tudo certo mas ainda to com certas de duvidas por exemplo como cria um campo como "digite novamente" caso a pessoa que digitar os numeros insuficientes ter outra chance para digitar o CPF e tudo mais, tem coisas que eu compreendo mas eu não sei muito bem onde usar cada código entende e eu preciso entregar esse trabalho até terça-feira ;/ adicionado 4 minutos depois @herbertbahia usei aquela estruturação de código depois que entendi o que você me enviou e deu certinho, porém aparece a mensagem "números insuficiente" mas não dá a opção de tentar novamente. Sabe como posso fazer isso?? #include <stdio.h> #include <stdlib.h> #include <string.h> //dados cadastrais do cliente struct cad_cliente{ char nome[10]; int idade; char CPF_CNPJ[20]; char CNH[30]; char Endereco[50]; }; int main(void){ char aux[200]; struct cad_cliente info; int opcao; while(1){ system("cls"); printf("-----------------------------------------\n"); printf("\tCONTROLE DE ESTACIONAMENTO\n"); printf("-----------------------------------------\n\n"); printf("1- Cadastrar Cliente\n"); printf("\n2- Cadastrar Veiculo\n"); printf("\n3- Listar veiculos cadastrados\n"); printf("\n4- Creditos\n"); printf("\n5- Sair\n"); printf("\nOpcao: "); scanf("%d",&opcao); switch(opcao){ case 1: system("cls"); printf("Informe o nome do cliente: "); fflush(stdin); gets(info.nome); printf("Informe a idade do cliente: "); scanf("%d", &info.idade); printf("Informe o CPF/CNPJ do cliente: "); fflush(stdin); gets(aux); if (strlen(aux) < 11){ printf("erro quantidade de digitos menor do que o correto\n"); printf("Digite novamente: \n"); system("pause"); break; } else if (strlen(aux) > 11){ printf("erro quantidade de digitos maior do que o correto\n"); printf("Digite novamente: \n"); system("pause"); break; } else{ strcpy(info.CPF_CNPJ,aux); } printf("Informe o número do CNH do cliente: "); fflush(stdin); gets(aux); if (strlen(aux) < 11){ printf("erro quantidade de digitos menor do que o correto\n"); printf("digite novamente: \n"); system("pause"); break; } else if (strlen(aux) > 11){ printf("erro quantidade de digitos maior do que o correto\n"); printf("digite novamente: \n"); system("pause"); break; } else{ strcpy(info.CNH,aux); } printf("Informe o endereco do cliente: "); gets(info.Endereco); system("pause"); break; } } } Eu coloquei aquela opção ali de "digite novamente" mas não tá dando pra escrever, queria que fosse um loop infinito caso a pessoa errasse várias vezes o CPF aparecesse a mensagem de "números insuficiente" com a opção de "digite novamente" espero que consiga me ajudar com isso, acho que a partir disso já vou conseguir finalizar a parte de cadastrar o cliente!!
  10. @KXSY Pode me mostrar? agradeceria adicionado 8 minutos depois
  11. Ele tinha que apertar a opção 1 pra ir pra guia de cadastro e depois voltar ao menu, o jeito que você mandou ficou meio bagunçado por causa disso olha o jeito que ficou na imagem. E outra, eu to querendo que apareça tipo quando eu for colocar os dados do CPF e também do CNH apareça "Digitos insuficientes" ou "numero demais" caso eu coloque mais de 11 numeros ou menos de 11 numeros, já que o CPF e o CNH só são até 11digitos entende? se conseguir me ajudar agradeço muito
  12. @arfneto Entendi o que disse acima, mas e como era pra ficar? essa parte foi um colega do meu grupo que fez e me mandou com inúmeros erros, eu fiz a parte de cadastrar cliente
  13. @Mauro Britivaldo Dessa forma? #include <stdio.h> #include <stdlib.h> #include <string.h> //dados cadastrais do cliente struct cad_cliente{ char nome[10]; int idade; char CPF_CNPJ[20]; char CNH[30]; char Endereco[50]; }; int main(void){ char aux[200]; struct cad_cliente info; int opcao; while(1){ int opcao_usuario (void){ system("cls"); printf( "-----------------------------------------\n" "\tCONTROLE DE ESTACIONAMENTO\n" "-----------------------------------------\n" "\n1- Cadastrar Cliente\n" "\n2- Cadastrar Veiculo\n" "\n3- Listar veiculos cadastrados\n" "\n4- Creditos\n" "\n5- Sair\n" "\nOpcao: " ); int opcao = 0; scanf("%d",&opcao); return opcao; } while(1){ switch (opcao_usuario ()){ case 1: system("cls"); printf("Informe o nome do cliente: "); fflush(stdin); gets(aux); if (strlen(aux) > 11)printf("erro contem mais de 11 digitos\n"); else strcpy(info.nome,aux); printf("Informe a idade do cliente: "); scanf("%d", &info.idade); printf("Informe o CPF/CNPJ do cliente: "); fflush(stdin); gets(info.CPF_CNPJ); printf("Informe o número do CNH do cliente: "); gets(info.CNH); printf("Informe o endereco do cliente: "); gets(info.Endereco); system("pause"); // main(); CHAMADA RECURSIVA SEM FUNDAMENTO SÓ PRA REPETIR O MENU break; } } if (strlen(aux) < 11){ printf("erro quantidade de digitos menor do que o correto\n"); system("pause"); break; } else if (strlen(aux) > 11){ printf("erro quantidade de digitos maior do que o correto\n"); system("pause"); break; } else{ strcpy(info.CPF_CNPJ,aux); } adicionado 19 minutos depois @herbertbahia esse if (strlen(aux) < 11){ teria que ser separado? porque deu erro com ele. Como na foto que lhe mandei
  14. @Mauro Britivaldo eu coloquei dessa forma em meu codeblocks mas ainda sim deu erro
  15. @herbertbahia ta dando esses erros a partir do: if (strlen(aux) < 11){
  16. @herbertbahia Acho que agora só ficou na posição errada, era pra ficar na parte do CPF e do CNH, quando eu digitasse uma quantidade de numeros menor que 11 digitos aparecesse "digitos insuficiente" e se eu colocasse mais que 11 digitos aparecer "numero demais" ou algo do tipo, mas ta aparecendo isso na parte do nome, olha como ficou:
  17. @herbertbahia mesmo dessa forma, quando eu digito um número muito menor de 11 digitos ele ainda não aparece a mensagem de "numeros insuficientes" ou "numeros demais" quando coloco menos de 11 digitos ou mais de 11 veja só
  18. @herbertbahia deu erro no char aux[200]; olha só como ficou adicionado 0 minutos depois @herbertbahia deu errado no char aux[200]; olha só como ficou adicionado 2 minutos depois @Mauro Britivaldo Como assim?! Não entendi muito bem, da forma que fiz está errado??
  19. @herbertbahia #include <stdio.h> #include <stdlib.h> //dados cadastrais do cliente struct cad_cliente{ char nome[10]; int idade; char CPF_CNPJ[20]; char CNH[30]; char Endereco[50]; }; int main(void){ system("cls"); struct cad_cliente info; int opcao; printf("-----------------------------------------\n"); printf("\tCONTROLE DE ESTACIONAMENTO\n"); printf("-----------------------------------------\n\n"); printf("1- Cadastrar Cliente\n"); printf("\n2- Cadastrar Veiculo\n"); printf("\n3- Listar veiculos cadastrados\n"); printf("\n4- Creditos\n"); printf("\n5- Sair\n"); printf("\nOpcao: "); scanf("%d",&opcao); switch(opcao){ case 1: system("cls"); printf("Informe o nome do cliente: "); fflush(stdin); gets(info.nome); printf("Informe a idade do cliente: "); scanf("%d", &info.idade); printf("Informe o CPF/CNPJ do cliente: "); fflush(stdin); gets(info.CPF_CNPJ); printf("Informe o número do CNH do cliente: "); gets(info.CNH); printf("Informe o endereco do cliente: "); gets(info.Endereco); system("pause"); main(); break; } } deu certinho, uma pergunta: tem como colocar tipo, como o CPF e o CNH só vai até 11 números, ou seja se a pessoa digitasse + que 11 ou menor que 11 aparecer uma dessas mensagem? "Números Insuficientes" ou "Números demais"
  20. @herbertbahia como eu mal iniciei no curso e já começou a pandemia acabou que eles não disponibilizaram ainda um material digital nem livro sobre a programação em si, ele só falou para pesquisarmos sobre adicionado 2 minutos depois #include <stdlib.h> //dados cadastrais do cliente struct cad_cliente{ char nome[10]; int idade; char CPF_CNPJ[20]; char CNH[30]; char Endereco[50]; }; int main(void){ struct cad_cliente info; int opcao; printf("-----------------------------------------\n"); printf("\tCONTROLE DE ESTACIONAMENTO\n"); printf("-----------------------------------------\n\n"); printf("1- Cadastrar Cliente\n"); printf("\n2- Cadastrar Veiculo\n"); printf("\n3- Listar veiculos cadastrados\n"); printf("\n4- Creditos\n"); printf("\n5- Sair\n"); printf("\nOpcao: "); scanf("%d",&opcao); switch(opcao){ case 1: system("cls"); printf("Informe o nome do cliente: "); fflush(stdin); gets(info.nome); printf("Informe a idade do cliente: "); scanf("%d", &info.idade); printf("Informe o CPF/CNPJ do cliente: "); fflush(stdin); gets(info.CPF_CNPJ); printf("Informe o número do CNH do cliente: "); gets(info.CNH); printf("Informe o endereço do cliente: "); gets(info.Endereco); system("pause"); main(); break; } } Eu fiz dessa maneira mas ai ficou desse jeito, não retornou para o menu principal. Não sei se coloquei no lugar errado ou faltou algo, mas tentei colocar em outros e ficou pior ainda
  21. @arfneto adicionei os códigos na opção code, não especifiquei o erro porque nem mesmo eu sei porque tá dando erro ai eu queria que alguém me ajudasse com isso
  22. @herbertbahia deu tudo certo quanto a isso, ai eu tentei colocar "Aperte enter para voltar ao menu" e deu esse erro aqui no cad_cliente. E outra, teria como eu colocar tipo quantos número o CPF e a parte do CNH precisa ter? Tipo como o CPF e o CNH só vai até 11 números ai se eu digitasse mais ou menos que isso aparecia na tela "números insuficiente" ou "números demais" por exemplo, como eu teria que usar nessa estrutura?
  23. @herbertbahia #include <stdio.h> #include <stdlib.h> //dados cadastrais do cliente struct cad_cliente{ char nome[10]; int idade; char CPF_CNPJ[20]; char CNH[30]; char Endereco[50]; }; int main(void){ struct cad_cliente info; int opcao; printf("-----------------------------------------\n"); printf("\tCONTROLE DE ESTACIONAMENTO\n"); printf("-----------------------------------------\n\n"); printf("1- Cadastrar Cliente\n"); printf("\n2- Cadastrar Veiculo\n"); printf("\n3- Listar veiculos cadastrados\n"); printf("\n4- Creditos\n"); printf("\n5- Sair\n"); printf("\nOpcao: "); scanf("%d",&opcao); switch(opcao){ system("cls"); case 1: printf("Informe o nome do cliente: "); gets(info.nome); printf("Informe a idade do cliente: "); scanf("%d", &info.idade); printf("Informe o CPF/CNPJ do cliente: "); fflush(stdin); gets(info.CPF_CNPJ); printf("Informe o número do CNH do cliente: "); gets(info.CNH); printf("Informe o endereço do cliente: "); gets(info.Endereco); break; } coloquei o system("cls"); abaixo na opcao mas ainda não apaga pra ficar só aquela opção, queria que apagasse pra ficar só a opcao 1 e quando eu terminasse de preencher esses dados que coloquei ai ia ter uma mensagem de "aperte enter para voltar ao menu" entende, o que está faltando? adicionado 1 minuto depois @herbertbahia ainda não vi esse conteúdo, meu professor mal explicou como trabalha em C. Ele só nos passou lógica de programação em Portugol e pediu pra gente usar essa lógica em C kkkkk mas é complicado
  24. @herbertbahia da pra usar essa estrutura junto ao outro código?
  25. @herbertbahia É porque tipo, eu queria que aparecesse assim: Digite uma opção: ai eu digito o numero 1 e apaga tudo aquilo e fica só as opções do número 1, como se fosse a guia do numero 1 entendeu? que é só a parte de cadastrar o cliente ai quando eu cadastrasse eu apertava enter e voltava pra aquele menu inicial. Sabe como faz? Pra não ter que ficar assim meio bagunçado ^

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

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!