Tengo un programa en listas donde se introduce el nombre del deudor, la cedula del deudor y la cantidad de la deuda; este programa debe ordenar las cantidades de las deudas (por burbuja) en forma descendente, debe buscar y eliminar la lista que se desee, se debe sumar las deudas para dar una deuda total y ademas visualizar los datos. Ya realice la insercion de datos, la suma de las deudas y su visualizacion; mi problema es que no he podido ordenar los datos ni extraer las listas... ¡¡¡AYUDENME PORFAVOR!!! gracias de antemano y aqui les dejo la muestra del programa:
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <alloc.h>
#include <iomanip.h>
#define localizar (struct lista *)malloc(sizeof(struct lista))
void insertar(void);
void visualizar(void);
struct lista
{
int deuda;
char nombre[100],cedula[100];
struct lista *sig;
}*AUX=NULL,*cab=NULL;
int main()
{
char opc;
do
{
clrscr( );
cout<<"\n""******************** BANCO XXX ****************************";
cout<<"\n""\n""------------------ MENU PRINCIPAL -------------------------";
cout<<"\n""1.- Insertar Datos del deudor";
cout<<"\n""2.- Visualizar la lista de Deudores";
cout<<"\n""3.- Extraiga Datos del deudor";
cout<<"\n""4.- Salir";
cout<<"\n""----------------------------------------------------------";
cout<<"\n""\n""Digite su opcion: ";
cin>>opc;
switch(opc)
{
case '1':
insertar( );
break;
case '2':
visualizar( );
break;
}
}
while (opc!='3');
}
void insertar(void)
{
AUX=localizar;
clrscr( );
cout<<"\n""******************** BANCO XXX ****************************";
cout<<"\n""\n""------------------ DATOS DEL DEUDOR -----------------------";
cout<<"\n""\n""Digite el nombre del deudor: ";
cin>>AUX->nombre;
cout<<"\n""Digite el numero de cedula: ";
cin>>AUX->cedula;
cout<<"\n""Digite la cantidad: $";
cin>>AUX->deuda;
AUX->sig=NULL;
if (cab==NULL)
cab=AUX;
else
{
AUX->sig=cab;
cab=AUX;
}
}
void visualizar(void)
{
clrscr( );
int i=0, suma_total=0;
gotoxy(28,2);
cout<<"\n""--------------- LISTA DE DEUDORES -----------------------";
cout<<"\n""\n""Cantidad de la deuda "<<"Nombre del deudor "<<"Numero de cedula del deudor";
while (AUX!=NULL)
{
gotoxy(1,7+i);cout<<"$ "<<AUX->deuda;
gotoxy(24,7+i);cout<<AUX->nombre;
gotoxy(44,7+i);cout<<AUX->cedula;
suma_total=suma_total+AUX->deuda;
AUX=AUX->sig;
i++;
}
cout<<"\n""\n""\n""---------------------------------------------------------";
cout<<"\n""La suma total de los deudores es: $"<<suma_total;
cout<<"\n""---------------------------------------------------------";
getch( );
}