gokernel
(usa Linux Mint)
Enviado em 25/01/2010 - 19:37h
Olá, gostaria de saber(neste pequeno programa) como o TERCEIRO ITEN cadastrado como o PRIMEIRO, fazendo a lista assim descer.
Espero que compreendam o programa.
Grato.
gokernel
gokernel@hotmail.com
//################################################
#include <stdio.h>
#include <string.h>
#include <malloc.h>
struct NOME {
char name[50];
struct NOME *proximo;
}*primeiro, *ultimo;
void store(struct NOME *i) {
if (!primeiro) { // Primeiro elemento da lista
i->proximo = NULL;
ultimo = i;
primeiro = i; // Gravado para INDEX COMO PRIMEIRO.
return;
}
i->proximo = NULL;
ultimo->proximo = i;
ultimo = i;
}
void enter() {
char str[100];
struct NOME *info = malloc(sizeof(struct NOME));
printf("Digite um nome: "); gets(str);
strcpy(info->name, str);
store(info);
}
int main() {
struct NOME *info;
int count=0;
primeiro = ultimo = NULL;
for (count=1; count <= 5; count++)
enter();
count=0;
// Lista os ITENS
info = primeiro;
while (info) {
printf("ITEN: %d - %s\n", count, info->name);
count++;
info = info->proximo;
}
//---------------------------------------------
// Agora, como faço para o TERCEIRO nome apareça com o PRIMEIRO
// e assim fazendo a lista descer.
//---------------------------------------------
// EXEMPLO PARA CADASTRAR:
// maria
// inacio
// joao <------ aqui deve aparecer como PRIMEIRO
// bruno
// paulo
// ESPERO UM RESULTADO DESTE TIPO:
// joao <------ O PRIMEIRO
// maria
// inacio
// bruno
// paulo
return 0;
}
//##########################################