Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
Entre para seguir isso  
kira911

Lista encadeada

Recommended Posts

Alguem poderia por favor postar um algoritmo contendo uma lista simplesmente encadeada pelo amor de deus !

Tipo, estou usando o dev c++. Sou obrigado a usar ele, pois é a IDE que a faculdade usa. E ele nao ta reconhecendo o comando "SIZE" para alocação de memoria. Ja tentei colocando todas as bibliotecas que conheço e nada :/ ... então, queria que algum de vocês colocassem o algoritmo aqui, sem aqueles deseinhos feios para explicar, apenas o algoritmo mesmo e se possivel no algoritmo algumas explicaçãosinhas só pra eu entender melhor ^_^ A! outra coisa de preferença um algoritmo que execute no DEV C++...A quem ajudar desde ja o meu muito obrigado e a quem quis ajudar mas nao pode tambem muito obrigado !

Compartilhar este post


Link para o post
Compartilhar em outros sites
Até onde eu sei o comando é sizeof() e não size...

Realmente, descobri isso um tempo apos colocar esse topico. Mas e quanto a lista encadeada :confused:

Compartilhar este post


Link para o post
Compartilhar em outros sites
Alguem poderia por favor postar um algoritmo contendo uma lista simplesmente encadeada pelo amor de deus !

Tipo, estou usando o dev c++. Sou obrigado a usar ele, pois é a IDE que a faculdade usa. E ele nao ta reconhecendo o comando "SIZE" para alocação de memoria. Ja tentei colocando todas as bibliotecas que conheço e nada :/ ... então, queria que algum de vocês colocassem o algoritmo aqui, sem aqueles deseinhos feios para explicar, apenas o algoritmo mesmo e se possivel no algoritmo algumas explicaçãosinhas só pra eu entender melhor ^_^ A! outra coisa de preferença um algoritmo que execute no DEV C++...A quem ajudar desde ja o meu muito obrigado e a quem quis ajudar mas nao pode tambem muito obrigado !

1-Você precisa de uma struct

struct exemplo
{
/* Declare os dados que vão ficar na lista
e embaixo um ponteiro para o próx: */
struct exemplo *prox;
};

typedef struct exemplo Exemplo;

2- voce precisa de um ponteiro pro primeiro elemento na main()

(não utilize variável global, peloamordedeus!)

Exemplo *primeiro=NULL;

3- Funções de inserção, criação de nó, liberar memória ocupada pela lista...

Editado por SharaMoustache

Compartilhar este post


Link para o post
Compartilhar em outros sites
1-Você precisa de uma struct

struct exemplo
{
/* Declare os dados que vão ficar na lista
e embaixo um ponteiro para o próx: */
struct exemplo *prox;
};

typedef struct exemplo Exemplo;

2- voce precisa de um ponteiro pro primeiro elemento na main()

(não utilize variável global, peloamordedeus!)

Exemplo *primeiro=NULL;

3- Funções de inserção, criação de nó, liberar memória ocupada pela lista...

Bele, essa parte que voce mostrou é a mais fácil...mas e a parte de inserçãoe exclusão alguem pode me ajudar por favor tenho um trabalho pra entregar amanha e ainda nao aprendiii :( olhem só o enunciado do trabalho, quem puder fazer pra eu analisar o codigo agradeço muito. Juro sem querer me aproveitar mas alguem me ajudeeee :(

Enunciado:

trazer em arquivo .c e .exe

dentro do .c tem que ter o nome dos cinco integrantes do grupo e RA.

Pode por os nomes e os ra no proprio programa em printf.

1 Cria lista

2 insere aluno

3 insere nota(media)

4 consulta ra

5 imprime lista

6 libera lista

7 finaliza

estrutura 1

ra

materia1

materia2

materia3

media global

Compartilhar este post


Link para o post
Compartilhar em outros sites
Se você estuda de noite, sua sala é 1118.

As 4 aulas com o Profº Alexandre Mesquita.

haha Ta sabendo legal em rs....voce deve ser da minha sala ne....quanto a essa parada ai que voce passou nao adiantou muito:( tipo eu sei como por um valor na lista......tipo na funcao de inserção onde ta INFO....como coloco ela no programa principal para o usuario digitar o valor ??? isso que ta ferrando !

Eu coloco scanf("%d", & novo->info); mas da erro ! Sei que pra muitos isso é uma duvida besta....mas ta me fritando o cerebro ja !

Editado por kira911

Compartilhar este post


Link para o post
Compartilhar em outros sites

Conseguii ! Pessoal duvida sancionada, muito obrigado a todos que ajudaram !

Compartilhar este post


Link para o post
Compartilhar em outros sites

Já que você terminou, posta o codigo completo como ultimo e definitivo post para que iniciantes possam ver e aprender com o codigo correto e completo

Compartilhar este post


Link para o post
Compartilhar em outros sites
Já que você terminou, posta o codigo completo como ultimo e definitivo post para que iniciantes possam ver e aprender com o codigo correto e completo

Ta ai o codigo ! .... Po ja aproveitando..estou com problemas com a string :( executem esse codigo e deem uma olhada, ja quebrei muito a cabeça e nada !


#include<stdio.h>
#include<stdlib.h>
#include<string.h>
typedef struct lista xpto;

struct lista
{
int info;
int idade;
char sexo;
char nuks[50];
struct lista *prox;
};


xpto *inicializa (void)
{
return NULL;
}

xpto *insere (xpto *l,int i,int k,char w,char u[50])
//É uma função que retorna lista
{
xpto *novo = (xpto*) malloc (sizeof(xpto));
novo->info=i;
novo->idade=k;
novo->sexo=w;
novo->nuks[50]=u[50];
novo->prox=l;
return novo;
}

void imprime (xpto*l)
{
xpto *p;
for (p=l;p!=NULL;p=p->prox)
{
printf ("Info = %d\nIdade = %d\nOpcao=%c\nNome=%s\n",p->info,p->idade,p->sexo,p->nuks);
}
}
int vazia (xpto *l)
{
if (l == NULL)
return 1;
else
return 0;
}

xpto *busca (xpto *l, int v)
{
xpto *p;
for (p=l;p!=NULL;p=p->prox)
{
if (p->info == v)
return p;
}
return NULL;
}
xpto *retirada (xpto *l, int v)
{
xpto *ant = NULL;
xpto *p = l;

while (p!= NULL && p->info != v)
{
ant = p;
p = p->prox;
}
if (p == NULL)
return l;
if (ant == NULL)
l = p->prox;
else
{
ant->prox = p->prox;
}
}

void libera (xpto *l)
{
xpto *p = l;

while (p!= NULL)
{

xpto *t = p->prox;
free (p);
p=t;
}
}

int main (void)
{
int num,idade,i,quant;
char op,nome[50];
xpto *l;
l = inicializa ();
printf("Quantos cadastros.");
scanf("%d", & quant);
for(i=0;i<quant;i++)
{
printf("Digite uma idade.");
scanf("%d", & num);
printf("Digite outra idade.");
scanf("%d", & idade);
fflush(stdin);
printf("Digite S ou N.");
scanf("%c", & op);
fflush(stdin);
printf("Digite um nome.");
gets(nome);
l=insere(l,num,idade,op,nome);
}
imprime (l);
libera (l);
system("pause");
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu diria que essa função de string.h é de suma importância:

strcpy(string_destino,string_origem);

Lembrando que não é para usar nenhum indexador de caractere, só o nome da string, exemplo:

char string_destino[80];
char string_origem[80]="String copiada!";
strcpy(string_destino,string_origem);

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

Entre para seguir isso  





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

×