Sei sulla pagina 1di 3

#include <stdio.

h>
#include <stdlib.h>
#include <math.h>
struct agend
{
char nome[25];
long num_fix,num_cel;
};
void inserir(struct agend agenda[50])
{
int x,y,pos,opcao;
printf("\n Digite qual posicao deseja efetuar o cadastro: ");
scanf("%i",&pos);
while(agenda[pos].nome[0]!='A')
{
printf("\n ESTA POSICAO JA ESTA SENDO USADA \n Por favor, Digite outra p
osicao na qual deseja efetuar o cadastro: ");
scanf("%i",&pos);
}
getchar();
printf("\n Digite seu nome: ");
gets(&agenda[pos].nome);
printf("\nDigite seu numero de telefone fixo, caso nao tenha, digite -1: ");
scanf("%d",&agenda[pos].num_fix);
printf("\nDigite seu numero de celular, caso nao tenha, digite -1: ");
scanf("%d",&agenda[pos].num_cel);
}
void Remover(struct agend agenda[50])
{
int pos;
printf("\n Digite a posicao que deseja remover do cadastro: ");
scanf("%i",&pos);
agenda[pos].nome[0]='A';
printf("\n CADASTRO REMOVIDO COM SUCESSO! \n");
}
void Listar(struct agend agenda[50])
{
int x;
for(x=0;x<50;x++)
{
if(agenda[x].nome[0]!='A')
{
if(agenda[x].num_fix==-1)
{
printf("Nome: %s tel. celular: %d Posicao: %i",agenda[x].nome,agenda[
x].num_cel,x);
printf("\n");
}
if(agenda[x].num_cel==-1)
{
printf("Nome: %s tel. fixo: %d Posicao: %i",agenda[x].nome,agenda[x].n
um_fix,x);
printf("\n");
}
if(agenda[x].num_cel!=-1 && agenda[x].num_fix!=-1){
printf("Nome: %s tel. fixo: %d tel. celular: %d Posicao: %i",agenda[
x].nome,agenda[x].num_fix,agenda[x].num_cel,x);
printf("\n");

}
}
}
}
void obter(struct agend agenda[50])
{
FILE *arq;
arq=fopen("Agenda telefonica.txt","r");
int x;
if(arq==NULL)
{
printf("Erro na abertura!");
exit(1);
}
while(x<50 && feof(arq)==0)
{
if(fscanf(arq,"%s\t%d\t%d\n",&agenda[x].nome,&agenda[x].num_fix,&agenda[
x].num_cel)==EOF)
{
printf("Erro de leitura!");
exit(1);
}
x++;
}
if(fclose(arq)!=0)
{
printf("Erro no fechamento!");
exit(1);
}
}
int main()
{
struct agend agenda[50];
int opcao,x;
for(x=0;x<50;x++)
{
agenda[x].nome[0]='A';
agenda[x].num_fix=-1;
agenda[x].num_cel=-1;
}
obter(agenda);
opcao=1;
while(opcao!=4)
{
printf("\n 1 para INSERIR USUARIO\n 2 para REMOVER USUARIO \n 3 para LISTAR
CADASTRADOS \n 4 para SAIR \n \nDigite a opcao desejada: ");
scanf("%i",&opcao);
switch(opcao) {
case 1:
inserir(agenda);
break;
case 2: Remover(agenda);

break;
case 3: Listar(agenda);
break;
case 4: return 0;
default:
printf("Opcao invalida...\n");
break;
}
}
}

Potrebbero piacerti anche