Ayuda, tengo un problema

Iniciado por Miraii, 16 Noviembre 2012, 00:51 AM

0 Miembros y 1 Visitante están viendo este tema.

Miraii

Disculpen pero tengo un pequeño problema con un programa que estoy realizando, el caso es crear un programa, vaya la redundancia que capture las matriculas y datos de un grupo de alumnos guardarlos y traerlos cuando se soliciten.
1.- podrían sugerirme una forma de guardar los datos para luego solicitarlos?
2.- Solo llevo la parte de capturar y todo eso solo que recibo errores a la hora de compilar podrían decirme en que estoy mal? .... les anexo el codigo que llevo hasta ahora:


Código (cpp) [Seleccionar]
//librerias

struct datos
{
    char nombre[20];
    char apellidoP[20];
    char apellidoM[20];
    char materia[20];
    int matricula;
    int grupo;
};
int j=0;
datos alumno[15];
char menu;
bool salir=false;


void bienvenida()
{
    //solo algo que escirbi
}   


void captura()
{
    system("cls");
        for(int i=0; i<3; i++){
        j++;
        cout<<"\n\tCaptura de datos"<<"\nIntroduzca su nombre: ";
        _flushall();
        gets(alumno[j-1].nombre);
        cout<<"\nIntroduzca sus apellidoP: ";
        _flushall();
        gets(alumno[j-1].apellidoP);
        cout<<"\nIntrodusca apellidoM: ";
        _flushall();
        gets(alumno[j-1].apellidoM);
        cout<<"\nIntrduzca su edad: ";
        _flushall();
        cin>>(alumno[j-1].edad);
        }
}

void guardar()
{
    //si me recomiendan una forma facil de hacer esto seria perfecto
}

void desplegar()
{
    system("cls");
        cout<<"\nDespliegue de informacion";
        for(int i=0; i<3; i++)
        {
            cout<<"\nContacto "<<i+1<<"\nNombre: "<<alumno[i].nombre<<"\nApellidos: "<<alumno[i].apellido<<"\nEdad: "<<alumno[i].edad<<endl;
        }
        _getch();
}

void main(){
    do{
{
    system("cls");
    cout<<"\t\tMenu de opciones"<<"\na)Capturar datos"<<"\nb)Imprimir datos"<<"\nc)Salir\n";
    cout<<"\nOprima a para escojer la opcion a y asi sucesivamente\n";
    cin>>menu;
    switch(menu)
    {
    case 'a':
        bienvenida();
        break;
    case 'b':
        captura();
        break;
    case 'c':
        desplegar();
        break;
    case 'd':
        salir=true;
        break;
    default: cout<<"Opcion no valida";
        _getch();
    }
}
}
    while(!salir);
}

m@o_614

por que en el for si estas declarando i utilizas j?? y luego cuando haces esto alumno[j-1] no estas accesando a una posición válida creo que ese es tu principal error