OSCAR/C.CPP
2021-09-12 19:50:38 +02:00

886 lines
19 KiB
C++
Raw Blame History

//PROYECTO DE PROGRAMACION
//BIBLIOTECAS EMPLEADAS
#include<stdio.h>
#include<bios.h>
#include<conio.h>
#include<string.h>
#include<ctype.h>
//DECLARACION DE FUNCIONES
typedef union guarda{
char matriz1[4];
char matriz2[74];
} OPCION;
OPCION cap;
void captura(int tam, char intochar, OPCION cap,char nombre[20]);
void recuadro(int x,int y,int x1,int y1,int o);
void dibujaeleccion(int opcion);
void dibujasubmenu1(int opcion);
void alumnos(int subopcion,int subopcion1,int subopcion2);
void menu();
//VARIABLES GLOBALES
typedef struct reg {
char apellido_alumno[20];
char nombre_alumno[15];
int n_matricula;
char nombre_asig[16][3];
char estado_asig[16][3];
int notas[16];
int fj[16];
int fn[16];
} ALUMNO_E3;
typedef struct reg1{
char apellido_alumno[20];
char nombre_alumno[15];
int n_matricula;
char nombre_asig[21][3];
char estado_asig[21][3];
int notas[21];
int fj[21];
int fn[21];
} ALUMNO_E4;
typedef struct reg2{
char apellido_alumno[20];
char nombre_alumno[15];
int n_matricula;
char nombre_asig[15][3];
char estado_asig[15][3];
int notas[15];
int fj[15];
int fn[15];
} ALUMNO_B1;
typedef struct reg3{
char apellido_alumno[20];
char nombre_alumno[15];
int n_matricula;
char nombre_asig[18][3];
char estado_asig[18][3];
int notas[18];
int fj[18];
int fn[18];
} ALUMNO_B2;
typedef struct reg4{
char apellido_alumno[20];
char nombre_alumno[15];
int n_matricula;
char nombre_asig[4][3];
char estado_asig[4][3];
int notas[4];
int fj[4];
int fn[4];
} ALUMNO_C1;
typedef struct reg5{
char apellido_alumno[20];
char nombre_alumno[15];
int n_matricula;
char nombre_asig[5][3];
char estado_asig[5][3];
int notas[5];
int fj[5];
int fn[5];
} ALUMNO_C2;
char ESO3[16][3]={"CN","CS","EF","PM","LC","I1","F1","MA","TE","RE","AE","I2",
"F2","EC","PC","TA"};
char ESO4[21][3]={"FQ","CN","CS","VM","EF","EP","LC","I1","F1","MA","MU","TE",
"RE","AE","I2","F2","CC","OE","IA","TX","IC"};
char BCN1[15][3]={"LC","I1","F1","FL","EF","RE","AR","BG","FQ","MA","I1","F2",
"MC","IA","EC"};
char BCN2[18][3]={"LC","I1","F1","HI","RE","AR","DI","FI","MA","BI","CI","QU",
"I2","F2","ES","GE","BC","HP"};
char CFGS1[4][3]={"SI","AD","PL","IA"};
char CFGS2[5][3]={"DA","DR","RE","FO","PF"};
char busca[1][3];
//FUNCION PRINCIPAL
void main()
{
int a=0,opcion=1;
textbackground(0);
_setcursortype(_NOCURSOR);
menu();
while(opcion!=6||a!=7181)
{
dibujaeleccion(opcion);
if(a==7181) dibujasubmenu1(opcion);
a=bioskey(0);
if(a==19712) opcion++;
if(a==19200) opcion--;
if(opcion==0) opcion=6;
if(opcion==7) opcion=1;
}
clrscr();
}
/////////////////////////////////FUNCIONES///////////////////////////////////
//DIBUJA EL INTERFAZ GENERAL
void menu()
{
clrscr();
textattr(LIGHTGRAY);
recuadro(2,2,79,24,1);
recuadro(2,1,79,1,0);
recuadro(2,25,79,25,0);
}
//DIBUJA LA ELECCION DE MENU GENERAL
void dibujaeleccion(int opcion)
{
//clrscr();
textcolor(LIGHTGRAY);
textattr(127);
gotoxy(3,1);
cprintf("ALUMNOS CALIFICACIONES Y FALTAS BOLETINES ACTA DE E. SESION DE E. FINALIZAR");
gotoxy(3,25);
cprintf("F1 ayuda");
textattr(LIGHTGRAY);
switch(opcion)
{
case 1:gotoxy(3,1);cprintf("ALUMNOS");break;
case 2:gotoxy(11,1);cprintf("CALIFICACIONES Y FALTAS");break;
case 3:gotoxy(35,1);cprintf("BOLETINES");break;
case 4:gotoxy(45,1);cprintf("ACTA DE E.");break;
case 5:gotoxy(56,1);cprintf("SESION DE E.");break;
case 6:gotoxy(69,1);cprintf("FINALIZAR");break;
}
}
//DIBUJA SUBMENUS
void dibujasubmenu1(int opcion)
{
int a=0,subopcion=1,subopcion1=1,subopcion2=1;
recuadro(30,8,50,16,2);
while(a!=7181)
{
textattr(127);
gotoxy(38,9);
cprintf("E.S.O.");
gotoxy(38,12);
cprintf("B.C.N.");
gotoxy(37,15);
cprintf("C.F.G.S.");
textattr(LIGHTGRAY);
switch(subopcion)
{
case 1:gotoxy(38,9);cprintf("E.S.O.");break;
case 2:gotoxy(38,12);cprintf("B.C.N.");break;
case 3:gotoxy(37,15);cprintf("C.F.G.S.");break;
}
a=bioskey(0);
if(a==20480) subopcion++;
if(a==18432) subopcion--;
if(subopcion==0) subopcion=3;
if(subopcion==4) subopcion=1;
}
a=0;
recuadro(52,8,72,16,2);
switch(subopcion)
{
case 1: while(a!=7181)
{
textattr(127);
gotoxy(58,9);cprintf("3<EFBFBD>E.S.O. A");
gotoxy(58,11);cprintf("3<EFBFBD>E.S.O. B");
gotoxy(58,13);cprintf("4<EFBFBD>E.S.O. A");
gotoxy(58,15);cprintf("4<EFBFBD>E.S.O. B");
textattr(LIGHTGRAY);
switch(subopcion1)
{
case 1: gotoxy(58,9);cprintf("3<EFBFBD>E.S.O. A");break;
case 2: gotoxy(58,11);cprintf("3<EFBFBD>E.S.O. B");break;
case 3: gotoxy(58,13);cprintf("4<EFBFBD>E.S.O. A");break;
case 4: gotoxy(58,15);cprintf("4<EFBFBD>E.S.O. B");break;
}
a=bioskey(0);
if(a==20480) subopcion1++;
if(a==18432) subopcion1--;
if(subopcion1==0) subopcion1=4;
if(subopcion1==5) subopcion1=1;
}
break;
case 2: while(a!=7181)
{
textattr(127);
gotoxy(58,9);cprintf("1<EFBFBD>B.C.N. A");
gotoxy(58,11);cprintf("1<EFBFBD>B.C.N. B");
gotoxy(58,13);cprintf("2<EFBFBD>B.C.N. A");
gotoxy(58,15);cprintf("2<EFBFBD>B.C.N. B");
textattr(LIGHTGRAY);
switch(subopcion1)
{
case 1: gotoxy(58,9);cprintf("1<EFBFBD>B.C.N. A");break;
case 2: gotoxy(58,11);cprintf("1<EFBFBD>B.C.N. B");break;
case 3: gotoxy(58,13);cprintf("2<EFBFBD>B.C.N. A");break;
case 4: gotoxy(58,15);cprintf("2<EFBFBD>B.C.N. B");break;
}
a=bioskey(0);
if(a==20480) subopcion1++;
if(a==18432) subopcion1--;
if(subopcion1==0) subopcion1=4;
if(subopcion1==5) subopcion1=1;
}
break;
case 3: while(a!=7181)
{
textattr(127);
gotoxy(56,10);cprintf("1<EFBFBD>C.F.G.S. A");
gotoxy(56,12);cprintf("1<EFBFBD>C.F.G.S. B");
gotoxy(56,14);cprintf("2<EFBFBD>C.F.G.S. ");
textattr(LIGHTGRAY);
switch(subopcion1)
{
case 1: gotoxy(56,10);cprintf("1<EFBFBD>C.F.G.S. A");break;
case 2: gotoxy(56,12);cprintf("1<EFBFBD>C.F.G.S. B");break;
case 3: gotoxy(56,14);cprintf("2<EFBFBD>C.F.G.S. ");break;
}
a=bioskey(0);
if(a==20480) subopcion1++;
if(a==18432) subopcion1--;
if(subopcion1==0) subopcion1=3;
if(subopcion1==4) subopcion1=1;
}
break;
}
//getch();
textattr(LIGHTGRAY);
recuadro(20,6,73,20,1);
a=0;
switch(opcion)
{
case 1:recuadro(3,3,14,6,2);
while(a!=7181)
{
textattr(127);
gotoxy(4,4);cprintf("INTRODUCIR");
gotoxy(4,5);cprintf("VISUALIZAR");
textattr(LIGHTGRAY);
switch(subopcion2)
{
case 1: gotoxy(4,4);cprintf("INTRODUCIR");break;
case 2: gotoxy(4,5);cprintf("VISUALIZAR");break;
}
a=bioskey(0);
if(a==20480) subopcion2++;
if(a==18432) subopcion2--;
if(subopcion2==0) subopcion2=2;
if(subopcion2==3) subopcion2=1;
}
alumnos(subopcion,subopcion1,subopcion2);
textattr(LIGHTGRAY);recuadro(3,3,15,7,1);
break;
case 2:recuadro(11,3,33,6,2);
while(a!=7181)
{
textattr(127);
gotoxy(17,4);cprintf("EVALUACIONES");
gotoxy(17,5);cprintf("FINAL DE E.");
textattr(LIGHTGRAY);
switch(subopcion2)
{
case 1: gotoxy(17,4);cprintf("EVALUACIONES");break;
case 2: gotoxy(17,5);cprintf("FINAL DE E.");break;
}
a=bioskey(0);
if(a==20480) subopcion2++;
if(a==18432) subopcion2--;
if(subopcion2==0) subopcion2=2;
if(subopcion2==3) subopcion2=1;
}
textattr(LIGHTGRAY);recuadro(11,3,34,7,1);
break;
}
}
//FUNCION PARA CREAR UN RECUADRO EN LAS COORDENADAS INDICADAS
void recuadro(int x,int y,int x1,int y1,int o)
{
int a,b;
for(a=x;a!=x1+1;a++)
for(b=y;b!=y1+1;b++)
{
gotoxy(a,b);
if(o==0||o==2) cprintf("<EFBFBD>");
else cprintf("<EFBFBD>");
}
if(o==2)
{
textattr(0);
for(a=y+1;a<y1+2;a++)
{
gotoxy(x1+1,a);
cprintf("<EFBFBD>");
}
for(a=x+1;a<x1+1;a++)
{
gotoxy(a,y1+1);
cprintf("<EFBFBD>");
}
}
}
/////////////////////////////FUNCION DE ALUMNOS//////////////////////////////
void alumnos(int subopcion,int subopcion1,int subopcion2)
{
//OPCION cap;
char nombre[9],nombreb[20];
int y=0;
int o,i;
FILE *eso3a,*eso3b,*eso4a,*eso4b,*bcn1a,*bcn1b,*bcn2a,*bcn2b;
FILE *cfgs1a,*cfgs1b,*cfgs2;
ALUMNO_E3 reg;ALUMNO_E3 busca;
ALUMNO_E4 reg1;ALUMNO_E4 busca1;
ALUMNO_B1 reg2;ALUMNO_B1 busca2;
ALUMNO_B2 reg3;ALUMNO_B2 busca3;
ALUMNO_C1 reg4;ALUMNO_C1 busca4;
ALUMNO_C2 reg5;ALUMNO_C2 busca5;
eso3a=fopen("eso3a.dat","a+b");
eso3b=fopen("eso3b.dat","a+b");
eso4a=fopen("eso4a.dat","a+b");
eso4b=fopen("eso4b.dat","a+b");
bcn1a=fopen("bcn1a.dat","a+b");
bcn1b=fopen("bcn1b.dat","a+b");
bcn2a=fopen("bcn2a.dat","a+b");
bcn2b=fopen("bcn2b.dat","a+b");
cfgs1a=fopen("cfgs1a.dat","a+b");
cfgs1b=fopen("cfgs1b.dat","a+b");
cfgs2=fopen("cfgs2.dat","a+b");
recuadro(16,3,40,23,2);
textattr(127);
gotoxy(17,3);
cprintf("NOMBRE:");
gotoxy(24,3);
captura(9,'c',cap,nombre);
strcpy(reg.nombre_alumno,nombre);
strcpy(reg1.nombre_alumno,nombre);
strcpy(reg2.nombre_alumno,nombre);
strcpy(reg3.nombre_alumno,nombre);
strcpy(reg4.nombre_alumno,nombre);
strcpy(reg5.nombre_alumno,nombre);
if(subopcion2==1) //mete datos
{
switch(subopcion) //dibuja asignaturas
{
case 1://ALUMNOS DE ESO
if(subopcion1==1||subopcion1==2)
{
for(y=6;y<22;y++)
{
gotoxy(19,y);
if(y<13) cprintf("%s:",ESO3[y-6]);
else if(y<15) cprintf("%i.-%s:",y-12,ESO3[y-6]);
else if(y<17) cprintf("%i.-%s:",y-14,ESO3[y-6]);
else cprintf("%i.-%s:",y-16,ESO3[y-6]);
}
}
else
for(y=4;y<24;y++)
{
gotoxy(19,y);
if(y<8) cprintf("%s:",ESO4[y-4]);
else if(y<13) cprintf("%i.-%s:",y-7,ESO4[y-4]);
else if(y<15) cprintf("%i.-%s:",y-12,ESO4[y-4]);
else if(y<17) cprintf("%i.-%s:",y-14,ESO4[y-4]);
else cprintf("%i.-%s:",y-16,ESO4[y-4]);
}
break;
case 2://ALUMNOS DE BCN
if(subopcion1==1||subopcion1==2)
{
for(y=7;y<22;y++)
{
gotoxy(19,y);
if(y<13) cprintf("%s:",BCN1[y-7]);
else if(y<15) cprintf("%i.-%s:",y-12,BCN1[y-7]);
else if(y<17) cprintf("%i.-%s:",y-14,BCN1[y-7]);
else cprintf("%i.-%s:",y-16,BCN1[y-7]);
}
}
else
for(y=5;y<23;y++)
{
gotoxy(19,y);
if(y<7) cprintf("%s:",BCN2[y-5]);
else if(y<9) cprintf("%i.-%s:",y-6,BCN2[y-5]);
else if(y<11) cprintf("%i.-%s:",y-8,BCN2[y-5]);
else if(y<13) cprintf("%i.-%s:",y-10,BCN2[y-5]);
else cprintf("%i.-%s:",y-12,BCN2[y-5]);
}
break;
case 3://ALUMNOS DE CFGS
if(subopcion1==1||subopcion1==2)
{
for(y=12;y<16;y++)
{
gotoxy(19,y);cprintf("%s:",CFGS1[y-12]);
}
}
else
for(y=11;y<16;y++)
{
gotoxy(19,y);cprintf("%s:",CFGS2[y-11]);
}
break;
}
//METE DATOS
gotoxy(2,25);
cprintf("RETURN[Asignatura Obligatoria],ESPACIO[Asignatura Convalidada]");
switch(subopcion)
{
case 1://ALUMNOS DE ESO
switch(subopcion1)
{
case 1:
for(y=6;y<22;y++)
{
if(y<13) gotoxy(22,y);
else gotoxy(25,y);
o=bioskey(0);
if(o==14624)
{
cprintf("AV");
strcpy(reg.estado_asig[y-6],"AV");
}
if(o==7181)
{
cprintf("AO");
strcpy(reg.estado_asig[y-6],"AO");
}
strcpy(reg.nombre_asig[y-6],ESO3[y-6]);
}
fwrite(&reg,sizeof(ALUMNO_E3),1,eso3a);
break;
case 2:
for(y=6;y<22;y++)
{
if(y<13) gotoxy(22,y);
else gotoxy(25,y);
o=bioskey(0);
if(o==14624)
{
cprintf("AV");
strcpy(reg.estado_asig[y-6],"AV");
}
if(o==7181)
{
cprintf("AO");
strcpy(reg.estado_asig[y-6],"AO");
}
strcpy(reg.nombre_asig[y-6],ESO3[y-6]);
}
fwrite(&reg,sizeof(ALUMNO_E3),1,eso3b);
break;
case 3:
for(y=4;y<24;y++)
{
if(y<8) gotoxy(22,y);
else gotoxy(25,y);
o=bioskey(0);
if(o==14624)
{
cprintf("AV");
strcpy(reg1.estado_asig[y-4],"AV");
}
if(o==7181)
{
cprintf("AO");
strcpy(reg1.estado_asig[y-4],"AO");
}
strcpy(reg1.nombre_asig[y-4],ESO4[y-4]);
}
fwrite(&reg1,sizeof(ALUMNO_E4),1,eso4a);
break;
case 4:
for(y=4;y<24;y++)
{
if(y<8) gotoxy(22,y);
else gotoxy(25,y);
o=bioskey(0);
if(o==14624)
{
cprintf("AV");
strcpy(reg1.estado_asig[y-4],"AV");
}
if(o==7181)
{
cprintf("AO");
strcpy(reg1.estado_asig[y-4],"AO");
}
strcpy(reg1.nombre_asig[y-4],ESO4[y-4]);
}
fwrite(&reg1,sizeof(ALUMNO_E4),1,eso4b);
}
break;
case 2://ALUMNOS DE BCN
switch(subopcion1)
{
case 1:
for(y=7;y<22;y++)
{
if(y<13) gotoxy(22,y);
else gotoxy(25,y);
o=bioskey(0);
if(o==14624)
{
cprintf("AV");
strcpy(reg2.estado_asig[y-7],"AV");
}
if(o==7181)
{
cprintf("AO");
strcpy(reg2.estado_asig[y-7],"AO");
}
strcpy(reg2.nombre_asig[y-7],BCN1[y-7]);
}
fwrite(&reg2,sizeof(ALUMNO_B1),1,bcn1a);
break;
case 2:
for(y=7;y<22;y++)
{
if(y<13) gotoxy(22,y);
else gotoxy(25,y);
o=bioskey(0);
if(o==14624)
{
cprintf("AV");
strcpy(reg2.estado_asig[y-7],"AV");
}
if(o==7181)
{
cprintf("AO");
strcpy(reg2.estado_asig[y-7],"AO");
}
strcpy(reg2.nombre_asig[y-7],BCN1[y-7]);
}
fwrite(&reg2,sizeof(ALUMNO_B1),1,bcn1b);
break;
case 3:
for(y=5;y<23;y++)
{
if(y<7) gotoxy(22,y);
else gotoxy(25,y);
gotoxy(22,y);
if(o==14624)
{
cprintf("AV");
strcpy(reg3.estado_asig[y-5],"AV");
}
if(o==7181)
{
cprintf("AO");
strcpy(reg3.estado_asig[y-5],"AO");
}
strcpy(reg3.nombre_asig[y-5],BCN2[y-5]);
}
fwrite(&reg3,sizeof(ALUMNO_B2),1,bcn2a);
break;
case 4:
for(y=5;y<23;y++)
{
if(y<7) gotoxy(22,y);
else gotoxy(25,y);
o=bioskey(0);
if(o==14624)
{
cprintf("AV");
strcpy(reg3.estado_asig[y-5],"AV");
}
if(o==7181)
{
cprintf("AO");
strcpy(reg3.estado_asig[y-5],"AO");
}
strcpy(reg3.nombre_asig[y-5],BCN2[y-5]);
}
fwrite(&reg3,sizeof(ALUMNO_B2),1,bcn2b);
}
break;
case 3://ALUMNOS DE CFGS
switch(subopcion1)
{
case 1:
for(y=12;y<16;y++)
{
gotoxy(22,y);
o=bioskey(0);
if(o==14624)
{
cprintf("AV");
strcpy(reg4.estado_asig[y-12],"AV");
}
if(o==7181)
{
cprintf("AO");
strcpy(reg4.estado_asig[y-12],"AO");
}
strcpy(reg4.nombre_asig[y-12],CFGS1[y-12]);
}
fwrite(&reg4,sizeof(ALUMNO_C1),1,cfgs1a);
break;
case 2:
for(y=12;y<16;y++)
{
gotoxy(22,y);
o=bioskey(0);
if(o==14624)
{
cprintf("AV");
strcpy(reg4.estado_asig[y-12],"AV");
}
if(o==7181)
{
cprintf("AO");
strcpy(reg4.estado_asig[y-12],"AO");
}
strcpy(reg4.nombre_asig[y-12],CFGS1[y-12]);
}
fwrite(&reg4,sizeof(ALUMNO_C1),1,cfgs1b);
break;
case 3:
for(y=11;y<16;y++)
{
gotoxy(22,y);
o=bioskey(0);
if(o==14624)
{
cprintf("AV");
strcpy(reg5.estado_asig[y-11],"AV");
}
if(o==7181)
{
cprintf("AO");
strcpy(reg5.estado_asig[y-11],"AO");
}
strcpy(reg5.nombre_asig[y-11],CFGS2[y-11]);
}
fwrite(&reg5,sizeof(ALUMNO_C2),1,cfgs2);
}
}
}
else
switch(subopcion) //visualiza datos
{
case 1://ALUMNOS DE ESO
switch(subopcion1)
{
case 1:
while(!feof(eso3a))
{
fread(&busca,sizeof(ALUMNO_E3),1,eso3a);
if(strcmp(nombre,busca.nombre_alumno)==0)
for(i=0;i<16;i++)
{
gotoxy(22,i+5);
cprintf("%s:%s",busca.nombre_asig[i],busca.estado_asig[i]);
}
}
break;
case 2:
while(!feof(eso3b))
{
fread(&busca,sizeof(ALUMNO_E3),1,eso3b);
if(strcmp(nombre,busca.nombre_alumno)==0)
for(i=0;i<16;i++)
{
gotoxy(22,i+5);
cprintf("%s:%s",busca.nombre_asig[i],busca.estado_asig[i]);
}
}
break;
case 3:
while(!feof(eso4a))
{
fread(&busca1,sizeof(ALUMNO_E4),1,eso4a);
if(strcmp(nombre,busca1.nombre_alumno)==0)
for(i=0;i<20;i++)
{
gotoxy(22,i+4);
cprintf("%s:%s",busca1.nombre_asig[i],busca1.estado_asig[i]);
}
}
break;
case 4:
while(!feof(eso4b))
{
fread(&busca1,sizeof(ALUMNO_E4),1,eso4b);
if(strcmp(nombre,busca1.nombre_alumno)==0)
for(i=0;i<20;i++)
{
gotoxy(22,i+4);
cprintf("%s:%s",busca1.nombre_asig[i],busca1.estado_asig[i]);
}
}
}
break;
case 2://ALUMNOS DE BCN
switch(subopcion1)
{
case 1:
while(!feof(bcn1a))
{
fread(&busca2,sizeof(ALUMNO_B1),1,bcn1a);
if(strcmp(nombre,busca2.nombre_alumno)==0)
for(i=0;i<15;i++)
{
gotoxy(22,i+6);
cprintf("%s:%s",busca2.nombre_asig[i],busca2.estado_asig[i]);
}
}
break;
case 2:
while(!feof(bcn1b))
{
fread(&busca2,sizeof(ALUMNO_B1),1,bcn1b);
if(strcmp(nombre,busca2.nombre_alumno)==0)
for(i=0;i<15;i++)
{
gotoxy(22,i+6);
cprintf("%s:%s",busca2.nombre_asig[i],busca2.estado_asig[i]);
}
}
break;
case 3:
while(!feof(bcn2a))
{
fread(&busca3,sizeof(ALUMNO_B2),1,bcn2a);
if(strcmp(nombre,busca3.nombre_alumno)==0)
for(i=0;i<18;i++)
{
gotoxy(22,i+5);
cprintf("%s:%s",busca3.nombre_asig[i],busca3.estado_asig[i]);
}
}
break;
case 4:
while(!feof(bcn2b))
{
fread(&busca3,sizeof(ALUMNO_B2),1,bcn2b);
if(strcmp(nombre,busca3.nombre_alumno)==0)
for(i=0;i<18;i++)
{
gotoxy(22,i+5);
cprintf("%s:%s",busca3.nombre_asig[i],busca3.estado_asig[i]);
}
}
}
break;
case 3://ALUMNOS DE CFGS
switch(subopcion1)
{
case 1:
while(!feof(cfgs1a))
{
fread(&busca4,sizeof(ALUMNO_C1),1,cfgs1a);
if(strcmp(nombre,busca4.nombre_alumno)==0)
for(i=0;i<4;i++)
{
gotoxy(22,i+11);
cprintf("%s:%s",busca4.nombre_asig[i],busca4.estado_asig[i]);
}
}
break;
case 2:
while(!feof(cfgs1b))
{
fread(&busca4,sizeof(ALUMNO_C1),1,cfgs1b);
if(strcmp(nombre,busca4.nombre_alumno)==0)
for(i=0;i<4;i++)
{
gotoxy(22,i+11);
cprintf("%s:%s",busca4.nombre_asig[i],busca4.estado_asig[i]);
}
}
break;
case 3:
while(!feof(cfgs2))
{
fread(&busca5,sizeof(ALUMNO_C2),1,cfgs2);
if(strcmp(nombre,busca5.nombre_alumno)==0)
for(i=0;i<5;i++)
{
gotoxy(22,i+11);
cprintf("%s:%s",busca5.nombre_asig[i],busca5.estado_asig[i]);
}
}
break;
}
}
getch();
textattr(119);
gotoxy(2,25);
cprintf("RETURN[Asignatura Obligatoria],ESPACIO[Asignatura Convalidada]");
textattr(7);
recuadro(16,3,41,24,1);
fclose(eso3a);
fclose(eso3b);
fclose(eso4a);
fclose(eso4b);
fclose(bcn1a);
fclose(bcn1b);
fclose(bcn2a);
fclose(bcn2b);
fclose(cfgs1a);
fclose(cfgs1b);
fclose(cfgs2);
}
//CAPTURA
void captura(int tam, char intochar, OPCION cap,char nombre[20])
{
int i=0,c=0;
if (intochar=='i')
{
do
{
cap.matriz1[i]=getch();
if (isdigit(cap.matriz1[i])==0)
{
i--;
if (i==-1)
i++;
}
else
{
cprintf("%c",cap.matriz1[i]);
i++;
c++;
}
}
while((cap.matriz1[i]!='\r') && (c+1<tam));
// strcpy(cap.matriz1[i+1],'\0');
cap.matriz1[i+1]='\0';
}
if (intochar=='c')
{
do
{
cap.matriz2[i]=getch();
if (isalpha(cap.matriz2[i])==0&&cap.matriz2[i]!=' '&&cap.matriz2[i]!='<EFBFBD>'&&cap.matriz2[i]!='<EFBFBD>')
{
i--;
if (i==-1)
i++;
}
else
{
cprintf("%c",cap.matriz2[i]);
i++;
c++;
}
}while((cap.matriz2[i+1]!='\r') && (c+1<tam));
//strcpy(cap.matriz2[i+1],'\0');
while(cap.matriz2[i+1]!='\r')
{
cap.matriz2[i+1]=getch();
}
cap.matriz2[i+1]='\0';
}
if (intochar=='i')
strcpy(nombre,cap.matriz1);
else strcpy(nombre,cap.matriz2);
}