#include #include #include #include #include #include FILE *fp; struct student{ char snum[13]; char fname[20]; char sname[20]; char mi; char ccode; } record; void Temp1(void); void twolinebox(int x1,int y1,int x2,int y2){ int x,y; gotoxy(x1,y1); printf("É"); //alt-201 gotoxy(x2,y1); printf("»"); //alt-187 for(y=y1+1;y gotoxy(x1,y); printf("º"); //alt-186 gotoxy(x2,y); printf("º"); //alt-186 } gotoxy(x1,y2); printf("È"); //alt-200 gotoxy(x2,y2); printf("¼"); //alt-188 for(x=x1+1;x gotoxy(x,y1); printf("Í"); //alt-205 gotoxy(x,y2); printf("Í"); //alt-205 } gotoxy(x1+1,y1+1); } void printxy(int x,int y,char string[]){ gotoxy(x,y); printf("%s",string); } void center(int y,char string[]){ int x=(80-strlen(string)+1)/2; gotoxy(x,y);printf("%s",string); } void Create(void){ char opt; center(21,"WARNING!!!"); center(22,"You are about to create a new file"); center(23,"This will erase all records in the file..."); center(24,"Are you sure you want to proceed?[Y/N] "); opt=getche(); opt=toupper(opt); if(opt=='Y'){ fp=fopen("Group4.txt","w"); center(24," "); center(24,"File successfully created!"); } getch(); fclose(fp); } void Add(void){ char opt; fp=fopen("Group4.txt","a"); clrscr(); Temp1(); gotoxy(19,8); scanf(" "); gets(record.snum); gotoxy(19,10); scanf(" "); gets(record.fname); gotoxy(19,12); scanf(" "); gets(record.sname); gotoxy(19,14); record.mi=getche(); record.mi=toupper(record.mi); gotoxy(19,16); record.ccode=getche(); record.ccode=toupper(record.ccode); gotoxy(5,22); clreol(); printxy(79,22,"º"); fprintf(fp,"%s %s %s %c %c",record.snum,record.fname,record.sname,record.mi,record.ccode); gotoxy(5,21); clreol(); center(21,"Record successfully added!"); printxy(79,21,"º"); gotoxy(53,22); delay(1000); center(22,"Press any key to go to main menu..."); getch(); fclose(fp); } void Temp1(void){ twolinebox(2,6,79,20); twolinebox(2,20,79,24); twolinebox(2,2,79,24); center(4,"ADD RECORD"); printxy(6,8,"Student no: "); printxy(6,10,"First Name: "); printxy(6,12,"Last Name: "); printxy(6,14,"Middle init:"); printxy(6,16,"Course code: "); center(22,"Course code: [A]-CompSci, [B]-for InfoTech, [anykey]-Sevices"); gotoxy(19,7); } void List(void){ int count=0,i,x=0,page=1,CS=0,IT=0,Serv=0; fp=fopen("Group4.txt","r"); clrscr(); center(2,"Polytechnic University of the Philippines"); center(3,"Sta. Mesa, Manila"); center(5,"College of Computer Management and Information Technology"); printxy(10,7,"Record Student #NameCourse"); for(i=1;i<80;i++){ gotoxy(i,8); puts("Í"); /*Alt-205*/ } while(fscanf(fp,"%s %s %s %c %c",&record.snum,&record.fname,&record.sname,&record.mi,&record.ccode)!=EOF) { if(count!=0&&count%5==0){ printxy(5,23,"Press any key to continue..."); getch(); x=0 for(i=10;i<=24;i++){gotoxy(1,i); clreol();} page++; } gotoxy(70,4); printf("Page %d",page); gotoxy(13,10+x); printf("%d",count+1); gotoxy(19,10+x); printf("%s",record.snum); gotoxy(37,10+x); printf("%s, %s,%c.",record.sname,record.fname,record.mi); gotoxy(62,10+x); switch(record.ccode) { case 'A': printf("CompSci"); CS++; break; case 'B': printf("InfoTech"); IT++; break; default : printf("Services"); Serv++; break; } x++; count++; } printxy(25,17,"TOTAL"); gotoxy(15,18); printf("Comp Sci: %d",CS); gotoxy(15,19); printf("InfoTech: %d",IT); gotoxy(15,20); printf("Services: %d",Serv); printxy(5,23,"Press any key to go to main menu..."); getch(); fclose(fp); } void Quit(void){ clrscr(); twolinebox(2,2,79,24); center(8,"PROGRAMMED"); center(9,"BY"); center(11,"Group 4"); center(13,"Badion, Frederick A."); center(14,"Sañosa, Emmanuel R."); center(15,"Zamora, Sweet Joan J."); delay(5000); exit(1); fclose(fp); } void Err_mess(void){ sound(1000); center(22,"Invalid Input!"); delay(1000); nosound(); } void main(){ char choice; do { clrscr(); twolinebox(29,6,51,8); twolinebox(20,5,60,18); twolinebox(2,20,79,25); twolinebox(2,2,79,25); center(7,"MAIN MENU"); printxy(30,9,"Press:"); printxy(30,11,"[A]-Create File"); printxy(30,12,"[B]-Add Record"); printxy(30,13,"[C]-List Record"); printxy(30,14,"[D]-Quit Program"); printxy(30,16,"Enter your choice..."); gotoxy(50,16); choice=getch(); choice=toupper(choice); switch(choice) { case 'A': Create(); break; case 'B': Add(); break; case 'C': List(); break; case 'D': Quit(); break; default: Err_mess(); break; }} while(choice!='D');}