Test Foro de elhacker.net SMF 2.1

Programación => Programación C/C++ => Mensaje iniciado por: Miraii en 16 Noviembre 2012, 00:51 AM

Título: Ayuda, tengo un problema
Publicado por: Miraii en 16 Noviembre 2012, 00:51 AM
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);
}
Título: Re: Ayuda, tengo un problema
Publicado por: m@o_614 en 16 Noviembre 2012, 03:09 AM
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