#include <stdio.h>
#include <stdlib.h>
struct agenda_telefonica
{
char nome [10];
char email[40];
char tel[10];
int codigo;
};
void incluir_contato(agenda_telefonica contato[], int pos);
void consultar_contato(agenda_telefonica contato[], int cod);
void alterar_contato(agenda_telefonica contato[], int cod);
void listar_contato(agenda_telefonica contato[],int pos);
int main()
{
agenda_telefonica contato[100];
int loop=1;
int usuario;
int pos =0;
int cod;
int r;
do
{
printf("==============================\n");
printf(" AGENDA TELEFONICA\n");
printf("==============================\n");
printf("\n");
printf(" [1] = Incluir um contato \n");
printf(" [2] = Alterar um contato \n");
printf(" [3] = Consultar um contato \n");
printf(" [4] = Excluir um contato \n");
printf(" [5] = Listar um contato \n");
printf(" [6] = Gerar o arquivo \n");
printf(" [7] = Para sair do programa \n");
scanf("%i",&usuario);
system("cls");
switch(usuario)
{
case 1:
incluir_contato(contato, pos);
r = pos;
pos++;
loop=1;
system("pause");
system("cls");
break;
case 2:
alterar_contato(contato,cod);
loop=1;
system("pause");
system("cls");
break;
case 3:
consultar_contato(contato, cod);
loop=1;
system("pause");
system("cls");
break;
case 4:
break;
case 5:
listar_contato(contato,pos);
loop=1;
system("pause");
system("cls");
break;
case 6:
break;
case 7:
loop=0;
break;
}
}while(loop);
return 0;
}
void incluir_contato(agenda_telefonica contato[], int pos)
{
printf("Informe o codigo:\n");
fflush(stdin);
scanf("%d",&contato[pos].codigo);
printf("\n Informe o nome \n\n ");
fflush(stdin);
scanf("%s",&contato[pos].nome);
printf("\n Informe o telefone \n\n ");
fflush(stdin);
scanf("%s",&contato[pos].tel);
printf("\n Informe o email \n\n ");
fflush(stdin);
scanf("%s",&contato[pos].email);
}
void consultar_contato(agenda_telefonica contato[], int cod)
{
printf("Informe o codigo:\n");
scanf("%d",&cod);
for(int i;i<100;i++){
if(cod==contato[i].codigo)
{
printf("Codigo : %d\n",contato[i].codigo);
printf("Nome : %s\n",contato[i].nome);
printf("Telefone : %s\n",contato[i].tel);
printf("E-mail : %s\n",contato[i].email);
}
}
}
void alterar_contato(agenda_telefonica contato[], int cod)
{
printf("Informe o codigo:\n");
scanf("%d",&cod);
for(int i;i<100;i++){
if(cod==contato[i].codigo)
{
printf("\n Informe o novo nome \n\n ");
fflush(stdin);
scanf("%s",&contato[i].nome);
printf("\n Informe o novo telefone \n\n ");
fflush(stdin);
scanf("%s",&contato[i].tel);
printf("\n Informe o novo email \n\n ");
fflush(stdin);
scanf("%s",&contato[i].email);
}
}
}
void listar_contato(agenda_telefonica contato[],int pos)
{
for(int i;i<pos;i++){
printf("Codigo : %d\n",contato[i].codigo);
printf("Nome : %s\n",contato[i].nome);
printf("Telefone : %s\n",contato[i].tel);
printf("E-mail : %s\n",contato[i].email);
printf("===============\n");
}
}
<Pessoal boa tarde, entao eu fiz uma atividade na faculdade que era a criação de uma agenda telefonica, com funções do tipo: incluir contato, alterar, excluir,listar e gerar arquivo. Fiz a atividade em sala estava funcionando perfeitamente e só ficou faltando a parte de excluir para fazer, enviei o codigo para meu e-mail e depois que baixei em casa para tentar fazer o excluir ele simplesmente não estava mais funcionando e tanto no code blocks quanto no dev++ não mostram que tem algum tipo de erro, entretanto, no falcon mostra um alerta assim="O formato '%s' é usado para o tipo 'char*', mas o parâmetro 2 é do tipo 'char (*)[10]', só que não impede o codigo de rodar, alguem poderia me dar uma luz? agredeceria bastante. segue o codigo em anexor .txt.>
agenda_telefonica.txt