?? listadoestudiantes.cpp
字號(hào):
#include "stdafx.h"
#include "ListadoEstudiantes.h"
//---------------------------------------------------------------------------
ListadoEstudiantes::ListadoEstudiantes()
: tamano(0), nodoInicio(NULL)
{
}
//---------------------------------------------------------------------------
int ListadoEstudiantes::cantidad()
{
return tamano;
}
//---------------------------------------------------------------------------
int ListadoEstudiantes::Agregar(Estudiante *Nuevo)
{
Estudiante *EstudianteObj = new Estudiante;
EstudianteObj = Nuevo;
EstudianteObj->nodoSiguiente = nodoInicio;
EstudianteObj->nodoAnterior = NULL;
if(!listadoVacio())
nodoInicio->nodoAnterior = EstudianteObj;
nodoInicio = EstudianteObj;
return tamano++;
}
bool ListadoEstudiantes::listadoVacio()
{
return ( this->nodoInicio == NULL);
}
//---------------------------------------------------------------------------
Estudiante *ListadoEstudiantes::Obtener(int Position)
{
Estudiante *nodoActual = nodoInicio;
for(int i = 0; i < Position && nodoActual != NULL; i++)
{
nodoActual = nodoActual->nodoSiguiente;
}
return nodoActual;
}
//---------------------------------------------------------------------------
bool ListadoEstudiantes::Borrar()
{
if( nodoInicio == NULL )
{
std::cout << "The list is empty\n";
return false;
}
else
{
Estudiante *nodoActual;
nodoActual = nodoInicio->nodoSiguiente;
nodoInicio->nodoSiguiente = nodoActual->nodoSiguiente;
delete nodoActual;
tamano--;
return true;
}
}
//---------------------------------------------------------------------------
bool ListadoEstudiantes::Borrar(int Position)
{
if( Obtener(Position) == NULL )
return false;
else
{
Obtener(Position - 1)->nodoSiguiente = Obtener(Position+1);
delete Obtener(Position);
tamano--;
return true;
}
}
//---------------------------------------------------------------------------
bool ListadoEstudiantes::Buscar(Estudiante* Item)
{
Estudiante *nodoActual;
if( Item == NULL )
return false;
for(nodoActual = nodoInicio; nodoActual != NULL; nodoActual = nodoActual->nodoSiguiente)
{
if( (nodoActual->matricula == Item->matricula))
return true;
else
nodoActual->nodoSiguiente;
}
return false;
}
bool ListadoEstudiantes::imprimirListado()
{
Estudiante *nodoActual;
Estudiante *nodoAnterior;
std::cout << "\nListado desde inicio hasta fin:";
for(nodoActual=nodoInicio; nodoActual!=NULL ;nodoActual=nodoActual->nodoSiguiente)
{
std::cout << "\nInformacion Estudiante:";
std::cout << "\nNombre: " << nodoActual->nombre;
std::cout << "\nApellido: " << nodoActual->apellido;
std::cout << "\nMatricula: $" << nodoActual->matricula << std::endl;
nodoAnterior=nodoActual;
}
std::cout << "\nListado fin hasta inicio:";
for(nodoActual=nodoAnterior; nodoActual!=NULL ;nodoActual=nodoActual->nodoAnterior)
{
std::cout << "\nInformacion Estudiante:";
std::cout << "\nNombre: " << nodoActual->nombre;
std::cout << "\nApellido: " << nodoActual->apellido;
std::cout << "\nMatricula: $" << nodoActual->matricula<< std::endl;
}
return true;
}
//---------------------------------------------------------------------------
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -