Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

viciado

[Resolvido] com struct

Recommended Posts

O problema e o seguinte:

 

Eu peço para digitar um nome se o nome esta no struck "jogador.nome" como eu faço para excluir o jogador mais novo.

 

Ex:

 

struct jogo
{
int idade;
char nome[50];
};

int main(){
   struct jogo cadastrar;
   printf("Digite o nome\n");
   scanf("%c",&cadastrar.nome);
   printf("Digite a idade");
   scanf("%d",&cadastrar.idade);

/* Agora como faço para pedir para digitar um nome, se estiver no struct excluir o mais novo */

 

No casa a struct deveria ser preenchida com varios nomes e idades

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fiz um modelo aqui, seria isso? Se tiver alguma coisa errada, avisem ae :D

Tá ficando cada vez mais complicado isso, hasueasheuiheaseh

 

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

void Excluir(void);
int i,qtd_nomes;

struct Jogo
{
	char nome[60];
	int idade;
};
struct Jogo *cadastrar;

void main(void)
{
	printf("\nQuantos nomes deseja entrar: ");
	scanf("%d",&qtd_nomes);

	cadastrar = (struct Jogo*)malloc(qtd_nomes * sizeof(int));

	for(i=0;i<qtd_nomes;i++)
	{
		printf("\nDigite um nome: ");
		scanf("%s",&cadastrar[i].nome);
		printf("Digite a idade: ");
		scanf("%d",&cadastrar[i].idade);
	}
	Excluir();

	for(i=0;i<qtd_nomes;i++)
	{
		printf("\nNome Aluno: %s",cadastrar[i].nome);
		printf("\nIdade Aluno: %d\n",cadastrar[i].idade);
	}
}

void Excluir()
{
	char nome[60];
	int k;
	int *nomes = &qtd_nomes;

	printf("\nQual aluno deseja remover? ");
	fflush(stdin);
	gets(nome);
	for(i=0;i<*nomes;i++)
	{
		if(strcmp(nome,cadastrar[i].nome) == 0)
		{
			for(k=i;k<*nomes;k++)
			{
				strcpy(cadastrar[k].nome,cadastrar[k+1].nome);
				cadastrar[k].idade = cadastrar[k+1].idade;
			}
		}
	}
	(*nomes)--;
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

ueh, não tem mais a opção para editar? ficou um errinho ali onde decrementa (*nomes)--;

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.