//Crea dos Listas Enlazadas (Números Par y Números Impar) #include<stdio.h> #include<stdlib.h> struct numero{ int n; struct numero *sig; }*final1, *inicio1, *final2, *inicio2; void insertar(){ struct numero *nuevo; nuevo=(struct numero *)malloc(sizeof(struct numero)); printf("INTRODUCIR EL NUMERO\n:"); scanf("%d",&nuevo->n); nuevo->sig=NULL; if(((nuevo->n)%2)==0){ if(inicio1==NULL){ inicio1=nuevo; final1=nuevo; }else{ final1->sig=nuevo; final1=nuevo; } } if(((nuevo->n)%2)!=0){ if(inicio2==NULL){ inicio2=nuevo; final2=nuevo; }else{ final2->sig=nuevo; final2=nuevo; } } } void par(){ struct numero *aux; aux=inicio1; Prof. Gregory Rivera if(aux==NULL){ printf("LISTA VACIA\n"); }else{ while(aux!=NULL){ printf("%d->", aux->n); aux=aux->sig; } printf("NULL\n"); } } void impar(){ struct numero *aux; aux=inicio2; if(aux==NULL){ printf("LISTA VACIA\n"); }else{ while(aux!=NULL){ printf("%d->", aux->n); aux=aux->sig; } printf("NULL\n"); } } main(){ int opc; do{ printf("\n\n\n1. Ingresar\n2. Mostrar Lista de Números\n3. salir\n"); scanf("%d", &opc); system("clear"); switch (opc){ case 1: insertar(); break; case 2: printf("LISTA DE NÚMEROS PAR\n"); par(); printf("\n\n"); printf("LISTA DE NÚMEROS IMPAR\n"); impar(); break; default: printf("Saliendo del Sistema\n"); break; } }while(opc!=3); }