#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: |
|