Ir ao conteúdo
  • Cadastre-se

Problema com o switch!


Posts recomendados

Galera, estou tendo um problema com esse algoritmo da agenda telefonica, sempre quando escolho a opção para adicionar um contato, na hora de colocar o nome, ele junta o nome com o numero, não lê cada um separadamente... Por favor quem puder ajudar ficarei muito agradecido!!!

 

 

printf("==============================================\n");
printf("---------------AGENDA TELEFONICA--------------\n");
printf("==============================================\n\n");
 
printf("1 - Adicionar contato\n");
printf("2 - Buscar contato\n");
printf("0 - Sair\n\n");
scanf("%d",&opcao);
 
switch (opcao){
 
case 1:
 
printf("Nome: \n");
gets(nome);
 
 
printf("Numero: \n");
gets(numero);
 
 
printf("Email: \n");
gets(email);
 
 
case 2:
 
printf("\n-------CONTATOS------\n\n");
 
printf("%s\n",nome);
printf("%s\n",numero);
printf("%s",email);
 
case 3:
 
printf("\n");
 
}
Link para o comentário
Compartilhar em outros sites

#include <stdio.h>#include <stdlib.h>void flush_in() {    int ch;    do {        ch = fgetc(stdin);    } while (ch != EOF && ch != '\n');} int main(int argc, char** argv){ NOVAMENTE:    char email[35];	 int opcao; char nome[25]; int telefone;  system("cls");printf("==============================================\n");printf("---------------AGENDA TELEFONICA--------------\n");printf("==============================================\n\n"); printf("1 - Adicionar contato\n");printf("2 - Buscar contato\n");printf("0 - Sair\n\n");scanf("%d", &opcao); switch (opcao){ case 1:printf("Digite Seu Nome: ");scanf("%s", nome);  flush_in(); printf("Digite seu Numero: ");scanf("%d", &telefone); flush_in(); printf("Digite seu Email: ");scanf("%s", email);goto NOVAMENTE;case 2:system("cls");printf("==============================================\n");printf("---------------SEUS DADOS---------------------\n");printf("==============================================\n\n"); printf("\n Nome>> %s\n\n", nome);printf("\n Telefone>> %d\n\n", telefone);printf("\n Email>> %s\n\n", email); case 0:exit(0); }	return 0;}

Tive que usar o comando goto sempre que possível substitua ele por laco  Um conselho use scanf para leitura de dados ao invés de gets, 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

#include <stdio.h>#include <stdlib.h>void flush_in() {    int ch;    do {        ch = fgetc(stdin);    } while (ch != EOF && ch != '\n');} int main(int argc, char** argv){ NOVAMENTE:    char email[35];	 int opcao; char nome[25]; int telefone;  system("cls");printf("==============================================\n");printf("---------------AGENDA TELEFONICA--------------\n");printf("==============================================\n\n"); printf("1 - Adicionar contato\n");printf("2 - Buscar contato\n");printf("0 - Sair\n\n");scanf("%d", &opcao); switch (opcao){ case 1:printf("Digite Seu Nome: ");scanf("%s", nome);  flush_in(); printf("Digite seu Numero: ");scanf("%d", &telefone); flush_in(); printf("Digite seu Email: ");scanf("%s", email);goto NOVAMENTE;case 2:system("cls");printf("==============================================\n");printf("---------------SEUS DADOS---------------------\n");printf("==============================================\n\n"); printf("\n Nome>> %s\n\n", nome);printf("\n Telefone>> %d\n\n", telefone);printf("\n Email>> %s\n\n", email); case 0:exit(0); }	return 0;}

Tive que usar o comando goto sempre que possível substitua ele por laco  Um conselho use scanf para leitura de dados ao invés de gets, 

 

Valeu cara, muito obrigado mesmo, você me ajudou bastante!!! 

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

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!