Ir ao conteúdo
  • Cadastre-se
prugowski

Programa em C com STRUCTS

Recommended Posts

Olá!!!

preciso de uma ajuda urgente...

preciso fazer um programa em C mas num sei direito nem como começar...

vai ai o exercicio...

flow...

...

Faça um programa que armazene as informações de 3 jogadores de futebol. Cada jogador é identificado pelo numero da sua camisa, pelo seu peso, e altura e pela inicial do seu nome. O programa devera ler todas as informações e imprimir a inicial do jogador mais baixo e o numero mais pesado. Use structs para resolver este exercicio.

...

Tentei fazer, mas não consegui muita coisa:

# include<stdio.h>

struct jogador {

int num;

float peso;

float alt;

char i_nome;

float i_baixo;

float num_pes;

};

main(){

struct jogador a1, a2, a3;

printf("Digite o numero da camisa:\n");

scanf("%d", & a1.num);

printf("Digite o peso:\n");

scanf("%f", & a1.peso);

printf("Digite a altura:\n");

scanf("%f",& a1. alt);

printf("Digite a letra inicial do nome:\n");

scanf("%c", & a1.i_nome);

printf("A inicial do nome do jogador\n", a1. i_nome);

}

e só!!!

HELP...:unsure:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Salve, prugowski.

Dê uma olhada nesse código, mas, estude o algorítmo.



struct estrutura_jogadores
{int num;
float peso;
float alt;
char i_nome;
};

int main ( void )
{
struct estrutura_jogadores jogador [ 3 ];
float mais_baixo = 0.0, mais_gordo = 0.0;
unsigned char indice = 0, inicial;

for ( indice = 0; indice < 3; indice++ )
{
printf("Digite o numero da camisa:\n");
fflush ( stdin );
scanf("%d", &jogador[indice].num);
printf("Digite o peso:\n");
fflush ( stdin );
scanf("%f", &jogador[indice].peso);
printf("Digite a altura:\n");
fflush ( stdin );
scanf("%f",&jogador[indice].alt);
printf("Digite a letra inicial do nome:\n");
fflush ( stdin );
scanf("%c", &jogador[indice].i_nome);
printf(" \n\n");
}

mais_baixo = jogador[0].alt;
inicial = jogador[0].i_nome;
mais_gordo = jogador[0].peso;

for ( indice = 1; indice < 3; indice++ )
{
if ( jogador[indice].peso > mais_gordo ) mais_gordo = jogador[indice].peso;
if ( jogador[indice].alt < mais_baixo )
{
mais_baixo = jogador[indice].alt;
inicial = jogador[indice].i_nome;
}
}

printf(" \n\n");
printf("A inicial do jogador mais baixo é: %c \n\n", inicial);
printf("O jogador mais pesado tem: %3.2f quilos \n\n", mais_gordo);
printf("Pressione uma tecla para finalizar.");

getch ( );
return 0;
}

# include<stdio.h>

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

estou implementando esse mesmo exemplo da estrutura com três jogadores, porém não consigo entender o erro que esta acontecendo na compilação... se alguém puder me da uma luz...

aparece o seguinte erro: cannot convert struct jogadores to float in assigment:confused:

#include<stdio.h> // bilbioteca de entrada e saida

#include<string.h> // biblioteca de tratamento de strings

#include<stdlib.h>

// estrutura que guarda os dados dos jogadores

struct estrutura_jogadores

{

int num; // numero da camisa

float peso; // peso do jogador

float altura; // altura do jogador

char i_nome; // primeira letra do nome do jogador

};

int main ()

{

struct estrutura_jogadores jogador [3];

float mais_baixo = 0.0;

float mais_gordo = 0.0;

unsigned char indice = 0;

char inicial;

for (indice = 0; indice <3; indice++)

{

printf("digite o numero da camisa:\n");

fflush (stdin); // limpeza dos buffers de saida

scanf("%d", &jogador[indice].num);

printf("digite o peso:\n");

fflush(stdin);// limpeza dos buffers de saida

scanf("%f", &jogador[indice].peso);

printf("digite a altura:\n");

fflush(stdin); // limpeza dos buffers de saida

printf("digite a letra inicial do nome do jogador:\n");

fflush(stdin);// limpeza dos buffers de saida

scanf("%c", &jogador[indice].i_nome);

}

mais_baixo=jogador[0].altura;

inicial=jogador[0].i_nome;

mais_gordo=jogador[0].peso;

for (indice=1; indice<3; indice++)

{

if (jogador[indice].peso > mais_gordo)

mais_gordo=jogador[indice];

if (jogador[indice].altura < mais_baixo)

{

mais_baixo = jogador[indice].altura;

inicial = jogador[indice].i_nome;

}

}

printf("A inicial do jogador mais baixo e: %c \n \n", inicial);

printf("O jogador mais pesado tem: %3.2f quilos \n \n", mais_gordo);

system("pause");

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agradecia se alguém me pudesse ajudar neste trabalho que tenho de entregar para avaliação. Porque ja não mexo nisto a bue e o que sei mesmo e php agradecia bastante se alguem me ajudasse nisto.

Cria um programa que guarde informação sobre jogadores de Futebol.

Os campos a guardar são os seguintes:

Nome, golos, salário, posição, nacionalidade, data de nascimento.

É de referir que as estruturas devem estar bem organizadas.

O Programa deve executar as seguintes operações:

a) Perguntar qual o nome do ficheiro a ler ou a escrever (dados sobre o jogador);

B) Caso o ficheiro exista carregar os dados para um vector, caso contrário deverá criar o ficheiro e inserindo informação;

c) Imprimir o conteúdo do vector;

d) Indicar qual o jogador com maior salário;

e) Indicar qual o jogador com menor numero de golos marcados;

f) Procurar o nome dum jogador e actualizar o número de golos marcados;

g) Acrescentar mais jogadores;

h) Gravar toda a informação do vector para o ficheiro;

i) Indicar o número de registos inseridos;

j) Pesquisar e visualizar a informação de um jogador;

k) Deve ser dada a possibilidade de adicionar várias posições, estas devem ser gravadas num novo ficheiro;

l) Deve ser dada a possibilidade de adicionar várias nacionalidades, estas devem ser gravadas num novo ficheiro;

m) Quando inserimos um jogador, nos campos nacionalidade e posição deverá surgir uma lista dos registos existentes por forma a que o utilizador possa escolher o valor desejado. Este tem que existir.

Exemplo:

Nacionalidades existentes: Português, Brasileiro, Chinês.

Ao introduzir o valor da nacionalidade do jogador, o programa deve verificar se a nacionalidade existe no vector. Poderás fazê-lo utilizando a função busca que criaste na alínea f). No entanto tens que programá-la de forma a obter o resultado desejado.

post-931490-1388496108875_thumb.png

Editado por R1pp3r
para n ser preciso a imagem

Compartilhar este post


Link para o post
Compartilhar em outros sites

/*Faça um programa que armazene as informações de 3 jogadores de futebol. Cada jogador é identificado pelo numero

da sua camisa, pelo seu peso, e altura e pela inicial do seu nome. O programa devera ler todas as informações e imprimir

a inicial do jogador mais baixo e o numero mais pesado. Use structs para resolver este exercicio.*/

#include<stdio.h>

#include<stdlib.h>

struct jogador {

int num;

float peso;

float alt;

char i_nome;

float i_baixo;

float num_pes;

};

main(){

struct jogador a1, a2, a3;

char maiorpeso, maioralt;

printf("Digite o numero da camisa:\n");

scanf("%d", & a1.num);

printf("Digite o peso:\n");

scanf("%f", & a1.peso);

printf("Digite a altura:\n");

scanf("%f",& a1. alt);

printf("Digite a letra inicial do nome:\n");

fflush(stdin);

scanf("%c", & a1.i_nome);

printf("Digite o numero da camisa:\n");

scanf("%d", & a2.num);

printf("Digite o peso:\n");

scanf("%f", & a2.peso);

printf("Digite a altura:\n");

scanf("%f",& a2. alt);

printf("Digite a letra inicial do nome:\n");

fflush(stdin);

scanf("%c", & a2.i_nome);

printf("Digite o numero da camisa:\n");

scanf("%d", & a3.num);

printf("Digite o peso:\n");

scanf("%f", & a3.peso);

printf("Digite a altura:\n");

scanf("%f",& a3. alt);

printf("Digite a letra inicial do nome:\n");

fflush(stdin);

scanf("%c", & a3.i_nome);

if(a1.alt>a2.alt && a1.alt>a3.alt){//comparação para encontrar o de maior altura

maioralt=a1.i_nome;

}

else

if(a1.alt<a2.alt && a2.alt>a3.alt){

maioralt=a2.i_nome;

}

else

maioralt=a3.i_nome;

if(a1.peso>a2.peso && a1.peso>a3.peso){

maiorpeso=a1.i_nome;

}

else

if(a1.peso<a2.peso && a2.peso>a3.peso){

maiorpeso=a2.i_nome;

}

else

maiorpeso=a3.i_nome;

printf("A inicial do nome do jogador com maior altura e %c e com maior peso e: %c\n", maioralt, maiorpeso);

system("pause");

return 0;

}

http://cliquenavegue.blogspot.com

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

×