Ir ao conteúdo
  • Cadastre-se
anderson.campos

C problema no codigo em c

Recommended Posts

#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

Compartilhar este post


Link para o post
Compartilhar em outros sites
#include <stdio.h>
#include <stdlib.h>

struct agenda_telefonica
{
    char nome [10];
    char email[40];
    char tel[10];
    int codigo;
};

void incluir_contato(struct agenda_telefonica contato[], int pos);
void consultar_contato(struct agenda_telefonica contato[], int cod);
void alterar_contato(struct agenda_telefonica contato[], int cod);
void listar_contato(struct agenda_telefonica contato[],int pos);

int main()
{
    struct 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(struct 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(struct 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(struct 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(struct agenda_telefonica contato[],int pos)
{


    for(int i = 0; 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");

    }


}

 

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

×