Estoy recién partiendo en esto de programar en C, tengo una duda que ojalá ustedes me pudiesen ayudar.
#include <stdio.h>
#include <stdlib.h>
struct Nodo {
int info;
struct Nodo * sig;
};
typedef struct Nodo * TipoLista;
TipoLista inserta_por_cabeza(TipoLista lista, int valor)
{
struct Nodo *nuevo;
nuevo = (Nodo*)malloc(sizeof(struct Nodo));
nuevo->info = valor;
nuevo->sig = lista;
lista = nuevo;
return lista;
}
void muestra_lista(TipoLista lista)
{
struct Nodo * aux;
printf ("->");
for (aux = lista; aux != NULL; aux = aux->sig)
printf ("[%d]->", aux->info);
printf ("|\n");
}
int main(void)
{
TipoLista l;
printf ("Insercion por cola de 1, 5, 10\n");
l = inserta_por_cabeza(l, 1);
l = inserta_por_cabeza(l, 5);
l = inserta_por_cabeza(l, 10);
muestra_lista(l);
system("pause");
}
Este código ingresa datos por la cabeza de la lista, como ustedes verán ingresa los valores 1,5,10. Mi pregunta es, qué tengo que hacer para que el programa ingrese los valores desde el teclado y cuantos valores yo quiera. Como dije anteriormente soy novato y es una duda que no he podido resolver. Muchas Gracias desde ya!!
#include <stdio.h>
#include <stdlib.h>
struct Nodo {
int info;
struct Nodo * sig;
};
typedef struct Nodo * TipoLista;
TipoLista inserta_por_cabeza(TipoLista lista, int valor)
{
struct Nodo *nuevo;
nuevo = (Nodo*)malloc(sizeof(struct Nodo));
nuevo->info = valor;
nuevo->sig = lista;
lista = nuevo;
return lista;
}
void muestra_lista(TipoLista lista)
{
struct Nodo * aux;
printf ("->");
for (aux = lista; aux != NULL; aux = aux->sig)
printf ("[%d]->", aux->info);
printf ("|\n");
}
int main(void)
{
TipoLista l;
printf ("Insercion por cola de 1, 5, 10\n");
l = inserta_por_cabeza(l, 1);
l = inserta_por_cabeza(l, 5);
l = inserta_por_cabeza(l, 10);
muestra_lista(l);
system("pause");
}
Este código ingresa datos por la cabeza de la lista, como ustedes verán ingresa los valores 1,5,10. Mi pregunta es, qué tengo que hacer para que el programa ingrese los valores desde el teclado y cuantos valores yo quiera. Como dije anteriormente soy novato y es una duda que no he podido resolver. Muchas Gracias desde ya!!