Bom dia Pessoal, sou novo aqui no fórum. Estou cursando Engenharia de Computação e estou com duvida em um código em C referente a lista ligada.
Abaixo encaminho o código onde preciso modificar a função InsereFim para que ordene a lista de forma crescente e decrescente.
#include <stdio.h>
#include <stdlib.h>
struct Node {
int valor;
struct Node *proximo;
};
typedef struct Node node;
void insereFim(int n, node *lista) {
node *novo = (node *) malloc(sizeof(node));
novo->proximo = NULL;
novo->valor = n;
node *temp = lista;
while (temp->proximo != NULL) {
temp = temp->proximo;
}
temp->proximo = novo;
}
void insereInicio(int n, node *lista) {
node *novo = (node *) malloc(sizeof(node));
novo->valor = n;
node *temp = lista->proximo;
lista->proximo = novo;
novo->proximo = temp;
}
main() {
int n;
node *lista = (node *) malloc(sizeof(node));
lista->proximo = NULL;
printf("Entre com valores para a lista ligada. Digite -1 para interromper a entrada de valores.\n");
do {
scanf("%d", &n);
if (n != -1) {
//insereFim(n, lista);
insereFim(n, lista);
}
} while (n != -1);
node *atual, *prox;
atual = lista->proximo;
while (atual != NULL) {
printf("%d ", atual->valor);
prox = atual->proximo;
free(atual);
atual = prox;
}
}
Pergunta
vscolasanto
Bom dia Pessoal, sou novo aqui no fórum. Estou cursando Engenharia de Computação e estou com duvida em um código em C referente a lista ligada.
Abaixo encaminho o código onde preciso modificar a função InsereFim para que ordene a lista de forma crescente e decrescente.
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
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.