Miren, tengo este programa, ya le movi muchas cosas y asi y el caso es que ni siquiera compila, aqui esta el codigo y nada mas son unas pequeñas dudillas, el programa debe de pedir informacion de alumnos y ordenarlos y despues imprimirlos.
#include <cstdlib>
#include <iostream>
using namespace std;
class alumno
{
private:
int clave;
char nombre[30];
int calif;
public:
alumno();
void pedir (void);
void ordenar (void);
void imprimir (void);
};
int main ()
{
int op;
alumno al[3];
alumno *ap_lista;
ap_lista=al;
do
{
cout << "Elige una opcion" << endl << "1. Dar de alta\n2.Ordenar\n3.Imprimir\n4.Salir\n";
cout << "Opcion: ";
switch (op)
{
case 1:
ap_lista.pedir(); //'pedir' has not been declared
cout << "Desea volver al menu?\n1. Si\n2. No\nOpcion---> ";
cin >> op;
break;
case 2:
ap_lista.ordenar(); //'ordenar' has not been declared
cout << "Desea volver al menu?\n1. Si\n2. No\nOpcion---> ";
cin >> op;
break;
case 3:
ap_lista.imprimir(); ////'imprimir' has not been declared
cout << "Desea volver al menu?\n1. Si\n2. No\nOpcion---> ";
cin >> op;
break;
case 4:
cout << "Adios!";
op=2;
break;
default:
cout << "Opcion no valida" << endl;
op=1;
break;
}
}
while (op=!2 && op==1);
return 0;
}
void alumno::pedir()
{
for(int i=0;i<=3;i++)
{
cout << "Dame clave: ";
cin >> (ap_lista+i)->clave; //'ap_lista' undeclared (first use function)
cin.get();
cout << "Dame el nombre: ";
cin.getline((ap_lista+i)->nombre,30);
cout << "Dame la calificacion: ";
cin >> calif;
}
}
void alumno::ordenar()
{
int tmp;
for(int i=0;i<3;i++)
{
for(int j=i+1;j<3;j++)
{
if((*(ap_lista+i))>(*(ap_lista+j))) //'ap_lista' undeclared (first use
function)
{
tmp=*(ap_lista+i);
*(ap_lista+i)=*(ap_lista+j);
*(ap_lista+j)=tmp;
}
}
}
void alumno::imprimir() //expected primary-expression before 'void'
{
for(int i=0;i<=3;i++)
{
cout << endl << (ap_lista+i)->clave
cout << " " << (ap_lista+i)->nombre
cout << " " << (ap_lista+i)->calif << endl;
}
} //expected ´}' at end of input
asi es como me marcan los errores, en serio que ya trate de muchas maneras y no me sale, por favor ayuda!!