PROGRAMA EN C++ SOBRELISTA SIMPLE ENLAZADA.
#include<iostream.h>    #include<conio.h>    #include<stdlib.h>    #include<string.h>    struct lista    {    int num;    ...
switch(opc)      {      case 1:      inicio();      break;      case 2:      final();      break;      case 3:      antes(...
else{nuevo->sig=cab;cab=nuevo;ult->sig=cab;}printf("ndesea agregar otro numero? s/n: ");fflush(stdin);scanf("%c",&resp);}}...
void mostrar()  {  nodo *ptr;  int valido=0;  ptr=cab;  while(valido!=1)  {  if(ptr==ult)  {  valido=1;  }  printf("%d",pt...
if((ptr==cab)&&(y==1)){cab=ptr->sig;ult->sig=cab;y=0;}else if((ptr==ult)&&(y==1)){while(vali2!=1){if(pkr==ult){vali2=1;}if...
}      }      void antes()      {      nodo *nuevo, *ptr, *pkr, *aux;      int num, y=0, valido=0;      char resp=s;      ...
}      printf("ndesea agregar otro numero? s/n: ");      fflush(stdin);      scanf("%c",&resp);      }      }      void de...
Upcoming SlideShare
Loading in …5
×

Programa en c de listas

4,890 views

Published on

Programa sobre listas simples

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
4,890
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
95
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Programa en c de listas

  1. 1. PROGRAMA EN C++ SOBRELISTA SIMPLE ENLAZADA.
  2. 2. #include<iostream.h> #include<conio.h> #include<stdlib.h> #include<string.h> struct lista { int num; struct lista *sig; }; typedef struct lista nodo; void inicio(); void final(); void mostrar(); void del(); void antes(); void despues(); nodo *cab=NULL; nodo *ult=NULL; int main(){ int opc=0; while(opc!=7) { clrscr(); printf("nMENUn1.- ingresar al inicion2.- ingresar alfinaln3.- insertar antesn4.- insertar despuesn5.- imprimirn6.-eliminarn7.- salirningrese su opcion: "); scanf("%d",&opc);
  3. 3. switch(opc) { case 1: inicio(); break; case 2: final(); break; case 3: antes(); break; case 4: despues(); break; case 5: mostrar(); break; case 6: del(); break; } }} void inicio() { nodo *nuevo; char resp=s; while(resp!=n) { nuevo=((nodo*)malloc(sizeof(nodo))); printf("ningrese el nuevo numero: "); scanf("%d",&nuevo->num); if(cab==NULL) { cab=nuevo; nuevo->sig=cab; ult=cab; }
  4. 4. else{nuevo->sig=cab;cab=nuevo;ult->sig=cab;}printf("ndesea agregar otro numero? s/n: ");fflush(stdin);scanf("%c",&resp);}}void final(){nodo *nuevo;char resp=s;while(resp!=n){nuevo=((nodo*)malloc(sizeof(nodo)));printf("ningrese el nuevo numero: ");scanf("%d",&nuevo->num);if(cab==NULL){cab=nuevo;nuevo->sig=cab;ult=cab;}else{ult->sig=nuevo;ult=nuevo;ult->sig=cab;}printf("ndesea agregar otro numero? s/n: ");fflush(stdin);scanf("%c",&resp);}}
  5. 5. void mostrar() { nodo *ptr; int valido=0; ptr=cab; while(valido!=1) { if(ptr==ult) { valido=1; } printf("%d",ptr->num); ptr=ptr->sig; } getch(); } void del() { nodo *ptr; nodo *pkr; nodo *aux=NULL; int num, y=0, valido=0, vali2=0, vali3=0; ptr=cab; pkr=cab; printf("ningrese el numero a borrar: "); scanf("%d",&num); while(valido!=1) { if(ptr==ult) { valido=1; } if(num==ptr->num) { aux=ptr; y=1; }
  6. 6. if((ptr==cab)&&(y==1)){cab=ptr->sig;ult->sig=cab;y=0;}else if((ptr==ult)&&(y==1)){while(vali2!=1){if(pkr==ult){vali2=1;}if(pkr->sig==aux){ult=pkr;ult->sig=cab;y=0;}pkr=pkr->sig;}}else if(y==1){while(vali3!=1){if(pkr==ult){vali3=1;}if(pkr->sig==aux){pkr->sig=aux->sig;y=0;}pkr=pkr->sig;}}ptr=ptr->sig;
  7. 7. } } void antes() { nodo *nuevo, *ptr, *pkr, *aux; int num, y=0, valido=0; char resp=s; ptr=cab; pkr=cab; while(resp!=n) { nuevo=((nodo*)malloc(sizeof(nodo))); printf("ningrese el nuevo numero: "); scanf("%d",&nuevo->num); printf("nantes de quien quiere ingresar? INGRESE EL NUMERO:"); scanf("%d",&num); while(valido!=1) { if(ptr==ult) { valido=1; } if(num==ptr->num) { aux=ptr; y=1; } while(y==1) { if(pkr->sig==aux) { pkr->sig=nuevo; nuevo->sig=aux; y=0; } pkr=pkr->sig; } ptr=ptr->sig;
  8. 8. } printf("ndesea agregar otro numero? s/n: "); fflush(stdin); scanf("%c",&resp); } } void despues() { nodo *ptr, *nuevo; ptr=cab; char resp=s; int num, valido=0; while(resp!=n) { nuevo=((nodo*)malloc(sizeof(nodo))); printf("ningrese el nuevo numero: "); scanf("%d",&nuevo->num); printf("ndespues de quien quiere ingresar? INGRESE EL NUMERO:"); scanf("%d",&num); while(valido!=1) { if(ptr==ult) { valido=1; } if(num==ptr->num) { nuevo->sig=ptr->sig; ptr->sig=nuevo; } ptr=ptr->sig; } printf("ndesea agregar otro numero? s/n: "); fflush(stdin); scanf("%c",&resp); } }

×