Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <time.h>
- typedef struct
- {
- int dato;
- struct nodo * siguiente;
- }nodo;
- nodo * inicLista();
- nodo * crearNodo(int dato);
- nodo * cargarNodoUsuario();
- nodo * cargarNodoRandom();
- nodo * agregarAlPrincipio(nodo * lista);
- nodo * agregarAlPrincipio(nodo * lista, nodo * nuevoNodo);
- int main()
- {
- nodo * lista ; //primer nodo de mi lista
- lista = inicLista();
- nodo * nuevoNodo = cargarNodoUsuario();
- lista = agregarAlPrincipio(lista,nuevoNodo);
- nodo * otroNodo = cargarNodoUsuario();
- lista = agregarAlPrincipio(lista,otroNodo);
- return 0;
- }
- nodo * inicLista()
- {
- return NULL;
- }
- nodo * crearNodo(int dato)
- {
- nodo * nuevoNodo;
- nuevoNodo = (nodo *)malloc(sizeof(nodo));
- //(*nuevoNodo).dato = dato; //OK
- nuevoNodo->dato = dato; //TMB OK
- //nuevoNodo.dato = dato; nuevoNodo NO es un NODO es un PUNTERO a un NODO
- nuevoNodo->siguiente = NULL;
- return nuevoNodo;
- }
- nodo * cargarNodoUsuario()
- {
- int dato = 0;
- printf("ingrese dato\n");
- fflush(stdin);
- scanf("%d",&dato);
- nodo * nuevoNodo = crearNodo(dato);
- return nuevoNodo;
- }
- nodo * cargarNodoRandom()
- {
- srand (time(NULL));
- int dato = 0;
- dato=rand()%10;
- nodo * nuevoNodo = crearNodo(dato);
- return nuevoNodo;
- }
- nodo * agregarAlPrincipio(nodo * lista, nodo * nuevoNodo)
- {
- if (lista == NULL)
- {
- lista = nuevonodo;
- }
- else
- {
- nuevoNodo->siguiente = lista;
- lista = nuevoNodo;
- }
- return lista;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement