Listas

Clasificado en Apuntes de Otras materias de Otros cursos.

Escrito el 13 de Mayo de 2009 en esEspañol y con un tamaño de 2.225 bytes.

#include <stdio.h>
#include <stdlib.h>

struct t_nodo
{
int n;
struct t_nodo *sig;
};

void anyadir_nodo (struct t_nodo **, int);
void mostrar_multiplos (struct t_nodo *, int);



#include "cabecera.h"
main()
{
int num;
struct t_nodo *lista=NULL;
printf ("Introduce un numero entero (0 para salir): ");
scanf ("%d",&num);
while (num)
{
anyadir_nodo (&lista,num);
printf ("Introduce un numero entero (0 para salir): ");
scanf ("%d",&num);
}

if (lista==NULL)
puts ("La lista esta vacia");
else
{
printf ("Introduce otro numero entero: ");
scanf ("%d",&num);

mostrar_multiplos (lista,num);
}
}





#include "cabecera.h"
void
anyadir_nodo (struct t_nodo **plista, int num)
{
struct t_nodo *laux,*laux2;
if (*plista==NULL) //la lista esta vacia
{
laux=(struct t_nodo *)malloc(sizeof(struct t_nodo));
laux->n=num;
*plista=laux;
(*plista)->sig=NULL;
}
else
{
laux=*plista;

while (laux->sig!=NULL)
laux=laux->sig;
laux2=(struct t_nodo *)malloc(sizeof(struct t_nodo));
laux2->n=num;
laux->sig=laux2;
laux->sig->sig=NULL;
}
}
#include "cabecera.h"
void
mostrar_multiplos (struct t_nodo *lista, int num)
{
struct t_nodo *laux;
if (lista==NULL)
puts ("La lista esta vacia");
else
{
laux=lista;

while (laux!=NULL)
{
if ((laux->n) % num == 0)
printf ("%d es multiplo de %d\n",laux->n,num);
laux=laux->sig;
}}} cierra los 3
Tags:listas,t_nodo,if,struct,printf,int
Este documento se ha visitado 11 veces y le gusta a 1 personas
Los usuarios que han visitado esta ficha también han buscado:
while
© Wikiteka, 2010
Chuletas  |  Apuntes