Ir ao conteúdo
  • Cadastre-se

C Escreva um programa que contenha vetores para armazenar nome peso e idade de 5


Skarth Skarleth

Posts recomendados

#include <stdio.h>
#include <conio.h>

int main()
{
    /* declaracao dos ponteiros*/
    int *p_idade [5]; 
    float *p_peso [5]; 
    char *p_nome [5][100]; 

    /* declaracao dos vetores*/
    int idade[5];
    float peso[5]; 
    char nome [5][100]; 
    int i;    

    /*Entrada de dados*/
    for (i = 0; i < 5; i++)
    {
        printf("\nDados da pessoa %i\n", i+1);     

        printf("Nome: ");
        gets(nome[i]);
        p_nome[i] = &nome[i];

		printf("Idade: ");
        scanf("%i", &idade[i]);
        p_idade[i] = &idade[i];
        
		printf("Peso: ");
        scanf("%f", &peso[i]);
        p_peso[i] = &peso[i];

    }     

    /* imprime o valor dos ponteiros*/
    for (i = 0; i < 5; i++)
    {
        printf("Pessoa %d, Nome: %s \t, idade: %d, peso: %f\n", i, *p_nome[i], *p_idade[i], *p_peso[i]);
    }
}

Quero imprimir nome, idade e peso de 5 pessoas utilizando ponteiro.

Consigo compilar e inserir o solicitado mas não consigo imprimir o resulta do final, visto que não consigo encontrar o erro será que alguém pode me ajudar?

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Membro VIP
14 minutos atrás, Skarth Skarleth disse:

printf("Pessoa %d, Nome: %s \t, idade: %d, peso: %f\n", i, *p_nome[i], *p_idade[i], *p_peso[i]);

Há séculos não uso o printf mas acho que você deve acertar corretamente seus argumentos que formatam a impressão

Algo como:

printf("%s%d%%d%f",*p_nome[i], *p_idade[i],i,*p_peso[i]);

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

#include <stdio.h>
#include <conio.h>

int main()
{
    /* declaracao dos ponteiros*/
    int *p_idade[5]; 
    float *p_peso[5]; 
    char *p_nome[5]; 
    char enter;

    /* declaracao dos vetores*/
    int idade[5];
    float peso[5]; 
    char nome [5][100]; 
    int i;    

    /*Entrada de dados*/
    for (i = 0; i < 5; i++)
    {
        printf("\nDados da pessoa %i\n", i+1);     

        printf("Nome: ");
        gets(nome[i]);
        p_nome[i] = nome[i];

		printf("Idade: ");
        scanf("%i", &idade[i]);
        p_idade[i] = &idade;
       
        
		printf("Peso: ");
        scanf("%f", &peso[i]);
        p_peso[i] = &peso[i];
        getchar(); //para discartar o enter
         
       

    }  
    
   

    /* imprime o valor dos ponteiros*/
    for (i = 0; i < 5; i++)
    {
        printf("Pessoa %d, Nome: %s \t, idade: %d, peso: %f\n", i, p_nome[i], *p_idade[i], *p_peso[i]);
    }
}

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário 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 comunidades 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

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!