dvdhein
(usa Ubuntu)
Enviado em 11/09/2011 - 20:56h
Fiz o cadastro com menu, falta ajustar com gotoxy, mas a questão que ele não funciona, ele compila, mas quando vai executar não não obedece as opções..se alguem puder me ajudar..
#include <stdlib.h>
#include <iostream>
#include <stdio.h>
#include <string.h>
#define MAX 50
struct pessoa {
char nome[100];
char rg[15];
char cpf[15];
char telefone[30];
};
using namespace std;
//constantes e variaveis globais
pessoa cliente[11];
int i=1;
//-----------funçao-------------------------------
char menu()
{
cout<<"====================================================\n";
cout<<"=== MENU PRINCIPALs==================================\n";
cout<<"====================================================\n";
cout<<"=== Cadastro de Clientes=============================\n";
cout<<"====================================================\n";
cout<<" 1 - INCLUIR CLIENTES \n";
cout<<" 2 - LISTAR CLIENTES \n";
cout<<" 3 - PESQUISAR CLIENTES \n";
cout<<" Esc - Fechar o Programa \n\n";
char opcao=getchar();
return opcao;
}
//-------cadatro----------------------
void cadastro()
{
cout <<"nome:";
fgets(cliente[i].nome,MAX,stdin);
cout <<"\nRG:";
fgets(cliente[i].rg,MAX,stdin);
cout <<"\nCPF:";
fgets(cliente[i].cpf,MAX,stdin);
cout <<"\nTelefone:";
fgets(cliente[i].telefone,MAX,stdin);
i++;
}
//----- listar-----------------------
void listar()
{
int k =1;
cout<< "\nListagem de clientes cadastrados\n";
cout<< "\n NOME -- RG -- CPF -- TELEFONE --\n";
while (k<=i)
{
cout<<cliente[k].nome<<" "<<cliente[k].rg<<" " <<cliente[k].cpf<<" "<<cliente[k].telefone<<"\n";
k++;
} //fim while
getchar();
}
//menu pequisa
char menupesquisa()
{
cout<<"====================================================\n";
cout<<"=== MENU DE PESQUISA==================================\n";
cout<<"====================================================\n";
cout<<"=== ESCOLHA UMA DAS OPCOES DE PESQUISA=============================\n";
cout<<"====================================================\n";
cout<<" 1 - NOME \n";
cout<<" 2 - CPF \n";
cout<<" 3 - RG \n";
cout<<" 4 - TELEFONE \n";
cout<<" Esc - Fechar o Programa \n\n";
char opesq=getchar();
return opesq;
}
//fim menu-pesquisa
//-----------pesquisar---por---cpf-------
void pesquisarcpf()
{
int achou=0, k;
char cpf[11];
cout <<"\n digite o cpf: ";
fgets(cpf,MAX,stdin);
for(k=1; k<=i; k++)
{
if(strcmp(cliente[k].cpf, cpf) == 0) //comparar uma string com outra
{
achou =1;
break;
}
}//fim for
if (achou ==1 )
{
cout<<"nome: " <<cliente[k].nome<<"\n";
cout<<"rg: " <<cliente[k].rg<<"\n";
cout<<"cpf: " <<cliente[k].cpf<<"\n";
cout<<"telefone: " <<cliente[k].telefone<<"\n";
}
else
{
cout<<"\n o cliente nao foi encontrado!!!";
}
getchar();
}//fim pesquisa por cpf
//----------------- pesquisa por rg
void pesquisarg()
{
int achou=0, k;
char rg[11];
cout <<"\n digite o rg: ";
fgets(rg,MAX,stdin);
for(k=1; k<=i; k++)
{
if(strcmp(cliente[k].rg, rg) ==0) //comparar uma string com outra
{
achou =1;
break;
}
}//fim for
if (achou ==1 )
{
cout<<"Nome: " <<cliente[k].nome<<"\n";
cout<<"rg: " <<cliente[k].rg<<"\n";
cout<<"cpf: " <<cliente[k].cpf<<"\n";
cout<<"telefone: " <<cliente[k].telefone<<"\n";
}
else
{
cout<<"\n o cliente nao foi encontrado!!!";
}
getchar();
}//fim pesquisa por rg
void pesquisartel()
{
int achou=0, k;
char telefone[11];
cout <<"\n digite o telefone: ";
fgets(telefone,MAX,stdin);
for(k=1; k<=i; k++)
{
if(strcmp(cliente[k].telefone, telefone) ==0) //comparar uma string com outra
{
achou =1;
break;
}
}//fim for
if (achou ==1 )
{
cout<<"Nome: " <<cliente[k].nome<<"\n";
cout<<"rg: " <<cliente[k].rg<<"\n";
cout<<"cpf: " <<cliente[k].cpf<<"\n";
cout<<"telefone: " <<cliente[k].telefone<<"\n";
}
else
{
cout<<"\n o cliente nao foi encontrado!!!";
}
getchar();
}//fim pesquisa por telefone
//----------------pesquisar por nome----------
void pesquisarnome()
{
int achou=0, k;
char nome[50];
cout <<"\n digite o telefone: ";
fgets(nome,MAX,stdin);
for(k=1; k<=i; k++)
{
if(strcmp(cliente[k].nome, nome) ==0) //comparar uma string com outra
{
achou =1;
break;
}
}//fim for
if (achou ==1 )
{
cout<<"Nome: " <<cliente[k].nome<<"\n";
cout<<"rg: " <<cliente[k].rg<<"\n";
cout<<"cpf: " <<cliente[k].cpf<<"\n";
cout<<"telefone: " <<cliente[k].telefone<<"\n";
}
else
{
cout<<"\n o cliente nao foi encontrado!!!";
}
getchar();
}//fim pesquisa por nome
//-----------principal-------------------------------
main()
{
char opesq;
char opcao = menu();
while ( opcao != 27 )// enquanto opc for diferente de Esc = 27
{
opcao = menu();
switch (opcao)
{
case '1': cadastro();
break;
case '2': listar();
break;
case '3': menupesquisa();
if (opesq !=27)
{
switch (opesq)
{
case '1': pesquisarnome();
break;
case '2': pesquisarcpf();
break;
case '3': pesquisarg();
break;
case '4': pesquisartel();
break;
}//fim sw
}//fim if
break;
getchar();
}// fim do switch
opcao = menu();
}//fim do while opcao
getchar();
}//fim do programa