I'm trying to develop an agenda in C. I would like to know how do I store calendar contacts that I created in a vector \ array and list them?
I'm also breaking my head when it comes to listing a phone number ...
PLUS I would like tips to hone my code and add new features.
PLUSIwouldliketipstohonemycodeandaddnewfeatures.
Followthecode:
#include<string.h>#include<conio.h>#include<stdio.h>structagenda{intcod;charnome[40];inttel;intvazio;//VAZIO=0eDISPONÍVEL=1}registros[100];voidcadastrar(intcod,intpos);intverifica_pos();intverifica_cod(intcod);voidconsultar();voidexcluir();voidzerar();intmain(){zerar();intop=0,retorno,codaux,posicao;while(op!=4){printf("************ AGENDA ************\n\n\n");
printf(">>> MENU <<<\n\n");
printf("1 - CADASTRAR\n");
printf("2 - CONSULTAR\n");
printf("3 - EXCLUIR\n");
printf("4 - SAIR\n\n");
printf("OPCAO: ");
scanf("%d", &op);
fflush(stdin);
switch(op){
case 1: { //CADASTRAR
posicao = verifica_pos();
if (posicao != -1){
printf("\nEntre com o codigo desejado: ");
scanf("%d", &codaux);
fflush(stdin);
retorno=verifica_cod(codaux);
if(retorno==1)
cadastrar(codaux,posicao);
else
printf("\nCodigo ja existente!");
}
else
printf("\nA agenda esta cheia!");
break;
}
case 2: { //CONSULTAR
consultar();
break;
}
case 3: {
excluir();
break;
}
case 4: {
printf("\n\n TCHAU!!");
break;
}
}
}
getch();
}
void cadastrar(int cod, int pos){
pos = verifica_pos();
registros[pos].cod = cod;
printf("\nNOME: ");
fgets(registros[pos].nome, 40, stdin);
printf("\nTelefone: ");
scanf("%d",®istros[pos].tel);
registros[pos].vazio = 1;
printf("\nCadastro Realizado com Sucesso!\n\n");
}
int verifica_pos(){
int cont=0;
while(cont<=100){
if(registros[cont].vazio==0)
return(cont);
cont++;
}
return(-1);
}
int verifica_cod(int cod){
int cont=0;
while(cont<=100){
if(registros[cont].cod == cod)
return(0);
cont++;
}
return(1);
}
void consultar(){
int cont=0, cod;
printf("\nEntre com o codigo: ");
scanf("%d", &cod);
while(cont<=100){
if(registros[cont].cod == cod){
if(registros[cont].vazio == 1){
printf("\nNome: %s", registros[cont].nome);
printf("\nTelefone: %d\n\n", registros[cont].tel);
break;
}
}
cont++;
if(cont>100)
printf("\nCodigo nao encontrado!\n\n");
}
}
void excluir(){
int cod, cont=0;
printf("\nEntre com o codigo do registro que deseja excluir\n");
scanf("%d",&cod);
while(cont<=100){
if(registros[cont].cod == cod)
if(registros[cont].vazio == 1){
registros[cont].vazio = 0;
printf("\nExclusao realizada com sucesso!\n");
break;
}
cont++;
if(cont>100)
printf("\nCodigo nao encontrado.\n");
}
}
void zerar(){
int cont;
for(cont=0; cont<=100; cont++){
registros[cont].vazio=0;
}
}