Você está na página 1de 6

#include "conio.

h"
#include "stdio.h"
#include "windows.h"
struct Estudiante{
int cod_est;
char nom_est[15];
char ape_est[15];
int fec_nac;
char ciu_est[20];
}estudiante[100];
struct Materia{
int cod_mat;
char nom_mat[20];
int num_cre;
}materia[100];
struct Profesor{
int cod_pro;
char nom_pro[15];
float sue_pro;
char tit_pro[20];
}profesor[100];
struct Matricula{
int cod_matri;
int cod_est;
int fec_matri;
int cod_mat;
}matricula[100];
struct DetMatri{
int cod_matri;
int cod_mat;
}detMatri[100];
struct CarHor{
int cod_pro;
int cod_mat;
}carHor[100];
struct Calificacion{
int cod_est;
int cod_mat;
float nota1;
float nota2;
float nota3;
}calificacion[100];
FILE
FILE
FILE
FILE
FILE
FILE
FILE

*Fic_est;
*Fic_mat;
*Fic_pro;
*Fic_matri;
*Fic_det_matri;
*Fic_car_hor;
*Fic_cal;

void
void
void
void
void
void
void

registrar_est();
registrar_mat();
registrar_pro();
registrar_car_hor();
registrar_matri();
registrar_cal();
cargar();

int i_est=1,i_mat=1,i_pro=1,i_matri=1,i_det_matri=1,i_car_hor=1,i_cal=1;
main(){
int op;
cargar();
printf("%d
%d
%d
%d
%d
%d
%d
",i_est,i_mat,i_pro,i_matri,i_det_matri,i_car_hor,i_cal);
getch();
do
{
system("cls");
printf("<<< SISTEMA DE MATRICULACION >>>\n");
printf("1. Estudiante\n");
printf("2. Materias\n");
printf("3. Profesor\n");
printf("4. Carga horaria\n");
printf("5. Matricula\n");
printf("6. Calificacion\n");
printf("7. Busqueda especifica\n");
printf("8. Salir");
printf("\n Opcion que deseas: ");
scanf("%d",&op);
system("cls");
switch (op) //sin ;
{
case 1:
registrar_est();
break;
case 2:
registrar_mat();
break;
case 3:
registrar_pro();
break;
case 4:
registrar_car_hor();
break;
case 5:
registrar_matri();
break;
case 6:
registrar_cal();
break;
/*case 7:
for(int i=1;i<=3;i++)
printf("%s %s %d %d
%s",estudiante[i].ape_est,estudiante[i].ciu_est,estudiante[i].cod_est,e
studiante[i].fec_nac,estudiante[i].nom_est);

getch();
break;*/
}
}while(op!=8);
getch();
}
int menu(){
int op2;
system("cls");
printf("1. Adicionar\n");
printf("2. Consultar\n");
printf("3. Modificar\n");
printf("4. Eliminar\n");
printf("5. Listado\n");
printf("6. Regresar\n");
printf("\n Opcion que deseas : ");
scanf("%d",&op2);
return (op2);
}
/*------------------------FUNCIONES PARA LOS CASE-----------------*/
void registrar_est(){
printf("Ingrese el codigo del estudiante ");
scanf("%d",&estudiante[i_est].cod_est);
printf("Ingrese el nombre del estudiante ");
scanf("%s",estudiante[i_est].nom_est);
printf("Ingrese apellido del estudiante ");
scanf("%s",estudiante[i_est].ape_est);
printf("Ingrese la fecha de nacimiento del estudiante ");
scanf("%d",&estudiante[i_est].fec_nac);
printf("Ingrese la ciudad de residencia del estudiante ");
scanf("%s",estudiante[i_est].ciu_est);
Fic_est = fopen("estudiante.dat", "a+");
if(Fic_est == NULL){
printf("\nFichero no existente! \n Cree un fichero por
favor");
return;
}
fwrite(&estudiante[i_est], sizeof(struct Estudiante), 1, Fic_est);
printf("Registro Insertado");
getch();
fclose(Fic_est);
i_est++;
return;
}
void registrar_mat(){
printf("Ingrese el codigo de la materia");
scanf("%d",&materia[i_mat].cod_mat);
printf("Ingrese el nombre de la materia");
scanf("%s",materia[i_mat].nom_mat);
printf("Ingrese el numero de creditos de la materia");
scanf("%d",&materia[i_mat].num_cre);
Fic_mat = fopen("materia.dat", "a+");
if(Fic_mat == NULL){

favor");

printf("\nFichero no existente! \n Cree un fichero por

return;
}
fwrite(&materia[i_mat], sizeof(Materia), 1, Fic_mat);
printf("Registro Insertado");
fclose(Fic_mat);
i_mat++;
return;

void registrar_pro(){
printf("Ingrese el codigo del profesor");
scanf("%d",&profesor[i_pro].cod_pro);
printf("Ingrese el nombre del profesor");
scanf("%s",profesor[i_pro].nom_pro);
printf("Ingrese el sueldo del profesor");
scanf("%f",&profesor[i_pro].sue_pro);
printf("Ingrese el titulo del profesor");
scanf("%s",profesor[i_pro].tit_pro);
Fic_pro = fopen("profesor.dat", "a+");
if(Fic_pro == NULL){
printf("\nFichero no existente! \n Cree un fichero por
favor");
return;
}
fwrite(&profesor[i_pro], sizeof(Profesor), 1, Fic_pro);
printf("Registro Insertado");
fclose(Fic_pro);
i_pro++;
return;
}
void registrar_car_hor(){
printf("Ingrese el codigo del profesor");
scanf("%d",&carHor[i_car_hor].cod_pro);
printf("Ingrese el codigo de la materia");
scanf("%d",&carHor[i_car_hor].cod_mat);
Fic_car_hor = fopen("carga.dat", "a+");
if(Fic_car_hor == NULL){
printf("\nFichero no existente! \n Cree un fichero por
favor");
return;
}
fwrite(&carHor[i_car_hor], sizeof(CarHor), 1, Fic_car_hor);
printf("Registro Insertado");
fclose(Fic_car_hor);
i_car_hor++;
return;
}
void registrar_matri(){
printf("Ingrese el codigo de la matricula");
scanf("%d",&matricula[i_matri].cod_matri);
printf("Ingrese el codigo de la materia");
scanf("%d",&matricula[i_matri].cod_mat);
printf("Ingrese la fecha de la matricula");

scanf("%d",&matricula[i_matri].fec_matri);
Fic_matri = fopen("matricula.dat", "a+");
if(Fic_matri == NULL){
printf("\nFichero no existente! \n Cree un fichero por
favor");
return;
}
fwrite(&matricula[i_matri], sizeof(Matricula), 1, Fic_matri);
printf("Registro Insertado");
fclose(Fic_matri);
i_matri++;
return;
}
void registrar_cal(){
printf("Ingrese el codigo del estudiante");
scanf("%d",&calificacion[i_cal].cod_est);
printf("Ingrese el codigo de la materia");
scanf("%s",calificacion[i_cal].cod_mat);
printf("Ingrese la nota 1");
scanf("%d",&calificacion[i_cal].nota1);
printf("Ingrese la nota 2");
scanf("%d",&calificacion[i_cal].nota2);
printf("Ingrese la nota 3");
scanf("%d",&calificacion[i_cal].nota3);
Fic_cal = fopen("calificacion.dat", "a+");
if(Fic_cal == NULL){
printf("\nFichero no existente! \n Cree un fichero por
favor");
return;
}
fwrite(&calificacion[i_cal], sizeof(Calificacion), 1, Fic_cal);
printf("Registro Insertado");
fclose(Fic_cal);
i_cal++;
return;
}
void cargar(){
Fic_est = fopen("estudiante.dat", "a+");
if(!(Fic_est == NULL)){
fread(&estudiante[0], sizeof(struct Estudiante), 1,
Fic_est);
while(!feof(Fic_est)){
estudiante[i_est]=estudiante[0];
fread(&estudiante[0], sizeof(struct Estudiante), 1,
Fic_est);
i_est++;
}
}
fclose(Fic_est);
Fic_mat = fopen("materia.dat", "a+");
if(!(Fic_mat == NULL)){
fread(&materia[0], sizeof(struct Materia), 1, Fic_mat);
while(!feof(Fic_mat)){
materia[i_mat]=materia[0];
fread(&materia[0], sizeof(struct Materia), 1,

Fic_mat);

i_mat++;
}

}
fclose(Fic_mat);
Fic_pro = fopen("profesor.dat", "a+");
if(!(Fic_pro == NULL)){
fread(&profesor[0], sizeof(struct Profesor), 1, Fic_pro);
while(!feof(Fic_pro)){
profesor[i_pro]=profesor[0];
fread(&profesor[0], sizeof(struct Profesor), 1,
Fic_pro);
i_pro++;
}
}
fclose(Fic_pro);
Fic_car_hor = fopen("carga.dat", "a+");
if(!(Fic_car_hor == NULL)){
fread(&carHor[0], sizeof(struct CarHor), 1, Fic_car_hor);
while(!feof(Fic_car_hor)){
carHor[i_car_hor]=carHor[0];
fread(&carHor[0], sizeof(struct CarHor), 1,
Fic_car_hor);
i_car_hor++;
}
}
fclose(Fic_car_hor);
Fic_matri = fopen("matricula.dat", "a+");
if(!(Fic_matri == NULL)){
fread(&matricula[0], sizeof(struct Matricula), 1,
Fic_matri);
while(!feof(Fic_matri)){
matricula[i_matri]=matricula[0];
fread(&matricula[0], sizeof(struct Matricula), 1,
Fic_matri);
i_matri++;
}
}
fclose(Fic_matri);
Fic_cal = fopen("calificacion.dat", "a+");
if(!(Fic_cal == NULL)){
fread(&calificacion[0], sizeof(struct Calificacion), 1,
Fic_cal);
while(!feof(Fic_cal)){
calificacion[i_cal]=calificacion[0];
fread(&calificacion[0], sizeof(struct Calificacion),
1, Fic_cal);
i_cal++;
}
}
fclose(Fic_cal);
}

Você também pode gostar