Ir para conteúdo
Fórum Script Brasil
  • 0

Ajuda Com Lista E Ponteiro


Guest DAL

Pergunta

alguém podia me auxiliar a começar...

sou novo em C++, alguém poderia ir me auxiliando..

qualquer coisa se alguém tiver algo parecido e querer me passar para eu ir tentar fazendo...

valeu ai...

#include <stdio.h>
Struct it {
Int info;
Struct  it* prox;
};
Typedef struct it item;
/* função para inserção*/
{
}
/* função para listar*/
Void imprime (item*)
{
}
/*função para exclusão*/
Item* exclui(item* )
{
}
/* função para quantidade de elementos*/
Int quantidade (item* )
{
}
/* função para excluir toda a lista */
Item* exclui_lista (item* )
{
}
Main()
{
Int opção;
     Do
    {
           Printf(“= = =>   Escolha uma opção:       <= = = \n”);
        Printf(“=>  1 -   Inserir elemento na lista \n”);
        Printf(“=>  2 -   Listar os elementos da lista \n”);
        Printf(“=>  3 -   Excluir um elemento da lista \n”);
         Printf(“=>  4 -   Quantidade de elementos da lista \n”);
        Printf(“=>  5 -   Exclui toda a lista \n”);
        Printf(“=>  6 -   Sair \n”);
        Scanf(“%d” , &opção);
        Switch (opção)
        {
          Case1:
        /* Ler o numero para inserção e chamar a função*/
         Break;

      Case2
        /* Chamar a função para listar*/
                        Break;    
     Case3
        /* Ler o numero para excluir e chamar a função*/
                        Break;


     Case4
        */ Chamar a função para buscar quantidade de elementos*/
                  Break;
     Case5
        */ Chamar a função para excluir toda a lista*/
                         Break;
         }

Desenvolver um programa em C utilizando lista encadeada (ponteiros) com as seguintes funções:

- inserção

- listagem

- exclusão

- quantidade de elementos na lista

- excluir toda a lista

Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0

Qual sua é exatamente sua dúvida? Alias, esse fonte está errado, pois, por exemplo, não existe a palavra chave 'Void', e sim 'void'.

Falows!

Link para o comentário
Compartilhar em outros sites

  • 0

Meu caro...

isso na verdade não é para ser uma fonte, e sim uma breve introducao do trabalho, foi o que foi me passado para que eu começe...

por isso os comandos estao com a primeira letra em maiuscula como por exemplo o void que voce citou...

então.. isso não é uma fonte....

Minha duvida é bem basica...

tudo....

alguém poderia me auxiliar a começar a fazer.. ou se alguém já tiver isso ai pronto e quiser me mandar...

mais do mais... vamos por parte...

- inserção

- listagem

- exclusão

- quantidade de elementos na lista

- excluir toda a lista

Link para o comentário
Compartilhar em outros sites

  • 0

Salve!

Então aconselho a leitura das seguintes definições referente ao conceito de Listas:

Estrutura de Dados (visão geral)

Listas

Filas

A leitura é boa para se entender o conceito e até mesmo para um maior entendimento do algoritmo. ;)

Segue a implementação de uma Lista Linear Singularmente Ligada ou (para alguns) Lista Encadeada:

/* define estrutura tipo célula para LLSL (Lista Linear Singularmente Ligada) */
struct Cell {
       int info;           /* informação contida na célula da lista */
       struct Cell * prox; /* endereço (link) da célula sucessora ou próxima */
};

typedef struct Cell Celula; /* Celula é sinônimo de struct Cell */
typedef Celula * PCelula;   /* PCelula é sinônimo de Celula* */
Construir a Lista:
void ConstroiLLSL(PCelula *pinicio, unsigned n) /* Versão Iterativa */
{
     PCelula pnovo;                         /* para alocar célula */
     srand(time(NULL));                     /* para não gerar números repetidos */
     for (; n != 0; n--) {                 /* enquanto diferente de zero */
         pnovo = ALOQUE(Celula);            /* tenta alocar área no Heap */
         if (pnovo == NULL) abort();        /* falta de área no Heap do Sistema */
         pnovo->info = rand() % MAXRAND;    /* gera info da nova célula */
         pnovo->prox = *pinicio;            /* liga nova célula ao início */
         *pinicio = pnovo;                  /* pinicio aponta para nova célula */
     } /* for */
} /* ConstroiLLSL */
Mostrar a Lista:
void MostraLLSL(PCelula pinicio) /* Versão Iterativa */
{
     while (pinicio != NULL){               /* enquanto lista não vazia */
           printf(" %02d ",pinicio->info);  /* mostra campo info da célula */
           pinicio = pinicio->prox;         /* avança para próxima célula */
     } /* while */
} /* MostraLLSL */
Destruir a Lista:
void DestroiLLSL(PCelula *pinicio) /* Versão Iterativa */
{
     PCelula paux;                          /* para guardar endereço do início */
     while (*pinicio != NULL) {             /* enquanto lista não vazia */
           paux = *pinicio;                 /* salva endereço da primeira célula */
           *pinicio = paux->prox;           /* pinicio aponta para próxima célula */
           free(paux);                      /* libera célula para o Heap do sistema */
     } /* while */
} /* DestroiLLSL */

Conhecendo o conceito da Lista fica mais fácil para entender velho.

Foi um exemplo simples de como montar uma Lista Linear Singularmente Ligada (LLSL) ou (para alguns) Lista Encadeada.

Qualquer coisa é só falar brother!

Abraços,

William Rodrigues

Link para o comentário
Compartilhar em outros sites

  • 0

Blza mano...

estou tentando fazer...

cara eu estou lendo livros sim...

não estou apenas só pedindo para alguém me ajudar e depois eu entrego pronto.. acabou...

Estou pedindo ajuda porque o tempo para entrega é pequeno, mais estou lendo, livro, tutorial, arquivos que falam de lista e ponteiro...

valeu ai..

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...