Ir ao conteúdo
  • Cadastre-se
psy3204t

Erro em nova pesquisa

Recommended Posts

Bom dia amigos do Fórum,

estou com um problema no meu código em linguagem C, onde ao pressionar o número 1, ele não realiza uma nova pesquisa com os meus dados. Alguém pode me ajudar?

Segue o código fonte:

#include <windows.h>
#define size 200
char nome[size][50];
char email[size][50];
int cpf[size];
int op;
void cadastro();
void pesquisa();
void lista();


int main(void){
	cadastro();
	//lista();
	pesquisa();
	}
	
void lista(){
	int i;
	for(i=0;i<size;i++);
		
			printf("\n digite 1 para continuar ou outro valor para sair ");	
		
		
}
void cadastro(){	//cadastro
	static int linha;
	do{
    	printf("\nDigite o Nome: ");
		scanf("%s", &nome[linha]);
		printf("\nDigite o Email: ");
		scanf("%s", &email[linha]);	
		printf("\nDigite o CPF: ");
		scanf("%d", &cpf[linha]);
		printf("\n digite 1 para continuar ou outro valor para sair ");
		scanf("%d", &op);
		linha++;
	}while(op==1);
}
void pesquisa(){	//pesquisa
	int cpfPesquisa;
	char emailPesquisa[50];
	char nomePesquisa[50];
	int i;
	do{
		printf("\nDigite 0 para pesquisar por Nome, 1 para pesquisar por CPF ou 2 para pesquisar por e-mail. ");
		scanf("%d",&op);
		switch(op){
			case 0:
				printf("\nDigite o Nome: ");
				scanf("%s", &nomePesquisa);
				for(i=0;i<size;i++){
					if(strcmp(nome[i], nomePesquisa)==0){
						printf("\nNome: %s\nEmail: %s\nCPF: %d", nome[i], email[i], cpf[i]);
					}
				}
				break;
			case 1:
				printf("\nDigite o CPF: ");
				scanf("%d", &cpfPesquisa);
				for(i=0;i<size;i++){
					if(cpf[i]==cpfPesquisa){
						printf("\nNome: %s\nEmail: %s\nCPF: %d", nome[i], email[i], cpf[i]);
					}
				}
				break;
			case 2:
				printf("\nDigite o Email: ");
				scanf("%s", emailPesquisa);
				for(i=0;i<size;i++){
					if(strcmp(email[i], emailPesquisa)==0){
						printf("\nNome: %s\nEmail: %s\nCPF: %d", nome[i], email[i], cpf[i]);
					}
				}
				break;
			default:
				printf("\nOpcao Invalida");
				break;
		}
		printf("\nDigite 1 para uma nova pesquisa. ");
		scanf("%s", &op);
	}while(op==1);
}

Obrigado.

PS. Este é apenas um programa aleatório que eu criei para treinar com a linguagem C.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Galera, achei o erro:

}
		printf("\nDigite 1 para uma nova pesquisa. ");
		scanf("%s", &op);
	}while(op==1);
}

troquei as informações, coloquei %s ao invés de %d

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

×