1 #include <stdio.h>
2 #include <string.h>
3 #include <stdlib.h>
4
5 typedef struct Student
6 {
7 char studentName[50];
8 char studentId[15];
9 char studentDept[10];
10 char studentAddress[100];
11 char studentContactNum[15];
12 float studentCGPA;
13 float studentattendance;
14 float studentmarks;
15 } Student;
16
17 void username_password();
18 void displayincorrect();
19 void editviewadmin();
20 void studentmanagement();
21 void createAccount();
22 void displayInfo();
23 void updateInfo();
24 void deleteInfo();
25 void searchInfo();
26
27 int main()
28 {
29 username_password();
30
31 return 0;
32 }
33
34
35 void username_password()
36
37 {
38 int selection,counter=0;
39 char username[20];
40 char password[20];
41
42
43 do
44 {
45 printf("\n\t1. ADMIN\n\t2. STUDENT\n\t3. EXIT\n\n\tKINDLY MAKE YOUR SELECTION: ");
46 scanf("%d",&selection);
47
48 switch(selection)
49 {
50 case 1:
51 {
52 printf("\n\tHELLO THERE ADMIN!\n\t");
53
54 do
55 {
56 printf("\n\tPLEASE ENTER YOUR USERNAME: ");
57 scanf("%s",&username);
58
59 printf("\n\tPLEASE ENTER YOUR PASSWORD: ");
60 scanf("%s",&password);
61
62 if(strcmp(username,"easwarangmi")==0)
63 {
64 if(strcmp(password,"easwaran2107")==0)
65 {
66 sleep(1);
67 system("cls");
68 printf("\n\tWelcome Sir Easwaran!\n\t");
69 sleep(1);
70 system("cls");
71 editviewadmin();
72 }
73
74 else
75 {
76 displayincorrect();
77 }
78 }
79
80 else if(strcmp(username,"yasmingmi")==0)
81 {
82 if(strcmp(password,"yasmin2107")==0)
83 {
84 sleep(1);
85 system("cls");
86 printf("\n\tWelcome Ms Yasmin!\n\t");
87 sleep(1);
88 system("cls");
89 editviewadmin();
90 }
91
92 else
93 {
94 displayincorrect();
95 }
96 }
97
98 else if(strcmp(username,"fatehagmi")==0)
99 {
100 if(strcmp(password,"fateha2107")==0)
101 {
102 sleep(1);
103 system("cls");
104 printf("\n\tWelcome Ms Fateha!\n\t");
105 sleep(1);
106 system("cls");
107 editviewadmin();
108 }
109
110 else
111 {
112 displayincorrect();
113 }
114 }
115
116 else if(strcmp(username,"lindagmi")==0)
117 {
118 if(strcmp(password,"linda2107")==0)
119 {
120 sleep(1);
121 system("cls");
122 printf("\n\tWelcome Ms Linda!\n\t");
123 sleep(1);
124 system("cls");
125 editviewadmin();
126 }
127
128 else
129 {
130 displayincorrect();
131 }
132 }
133
134 else
135 {
136 displayincorrect();
137 }
138
139 ++counter;
140 }
141
142 while(counter<5);
143 {
144 system("cls");
145 printf("\n\tFORGOT YOUR USERNAME OR PASSWORD? PLEASE MAKE A REPORT!\n\t");
146 return 0;
147 }
148 }
149
150 case 2:
151 {
152 printf("\n\tHELLO THERE STUDENT!\n\t");
153
154 do
155 {
156 printf("\n\tPLEASE ENTER YOUR USERNAME: ");
157 scanf("%s",&username);
158
159 printf("\n\tPLEASE ENTER YOUR PASSWORD: ");
160 scanf("%s",&password);
161
162 if(strcmp(username,"aniqgmi")==0)
163 {
164 if(strcmp(password,"aniq2107")==0)
165 {
166 sleep(1);
167 system("cls");
168 printf("\n\tWelcome Aniq Idris!\n\t");
169 sleep(1);
170 system("cls");
171
172 }
173
174 else
175 {
176 displayincorrect();
177 }
178 }
179
180 else if(strcmp(username,"fahmigmi")==0)
181 {
182 if(strcmp(password,"fahmi2107")==0)
183 {
184 sleep(1);
185 system("cls");
186 printf("\n\tWelcome Aniq Fahmi!\n\t");
187 sleep(1);
188 system("cls");
189
190 }
191
192 else
193 {
194 displayincorrect();
195 }
196 }
197
198 else if(strcmp(username,"irfangmi")==0)
199 {
200 if(strcmp(password,"irfan2107")==0)
201 {
202 sleep(1);
203 system("cls");
204 printf("\n\tWelcome Ahmad Irfan!\n\t");
205 sleep(1);
206 system("cls");
207
208 }
209
210 else
211 {
212 displayincorrect();
213 }
214 }
215
216 else if(strcmp(username,"haziqgmi")==0)
217 {
218 if(strcmp(password,"haziq2107")==0)
219 {
220 sleep(1);
221 system("cls");
222 printf("\n\tWelcome Haziq Sani!\n\t");
223 sleep(1);
224 system("cls");
225
226 }
227
228 else
229 {
230 displayincorrect();
231 }
232 }
233
234 if(strcmp(username,"zafrangmi")==0)
235 {
236 if(strcmp(password,"zafran2107")==0)
237 {
238 sleep(1);
239 system("cls");
240 printf("\n\tWelcome Zafran Iman!\n\t");
241 sleep(1);
242 system("cls");
243
244 }
245
246 else
247 {
248 displayincorrect();
249 }
250 }
251 else
252 {
253 displayincorrect();
254 }
255 ++counter;
256 }
257 while(counter<5);
258 {
259 system("cls");
260 printf("\n\tFORGOT YOUR USERNAME OR PASSWORD? PLEASE MAKE A REPORT!\n\t");
261 return 0;
262 }
263 }
264
265 case 3:
266 {
267 printf("\n\tALRIGHT, GOODBYE AND TAKE CARE!\n\t");
268 return 0;
269 }
270
271 default:
272 {
273 sleep(1);
274 system("cls");
275 printf("WRONG ENTRY!");
276 sleep(1);
277 system("cls");
278 }
279 }
280 }
281 while (selection==0||selection>3);
282 }
283
284 void editviewadmin()
285 {
286 int selectionadmin;
287
288 do
289 {
290 printf("\n\t1. EDIT\n\t2. VIEW\n\t3. EXIT\n\n\tKINDLY MAKE YOUR SELECTION: ");
291 scanf("%d",&selectionadmin);
292
293 switch(selectionadmin)
294 {
295 case 1:
296 {
297 studentmanagement();
298 }
299
300 case 2:
301 {
302 displayInfo();
303 }
304
305 case 3:
306 {
307 sleep(1);
308 system("cls");
309 printf("\n\tPLEASE CHOOSE ONE OF THE FOLLOWING AGAIN");
310 username_password();
311 return 0;
312 }
313
314
315 default:
316 {
317 sleep(1);
318 system("cls");
319 printf("WRONG ENTRY!");
320 sleep(1);
321 system("cls");
322 }
323 }
324 }
325 while(selectionadmin==0||selectionadmin>3);
326 }
327
328 void displayincorrect()
329 {
330 sleep(1);
331 system("cls");
332 printf("\n\tWRONG USERNAME OR INCORRECT PASSOWRD!\n\t");
333 sleep(1);
334 system("cls");
335 printf("\n\tPLEASE TRY AGAIN!\n\t");
336 sleep(1);
337 system("cls");
338 }
339
340
341
342 void studentmanagement()
343 {
344 char option;
345
346 while (option != '0')
347 {
348 system("cls");
349 printf("\t\t====== Student Management Database System ======\n");
350 printf("\n\t\t\t1. Create Student Account");
351 printf("\n\t\t\t2. Display All Students Information");
352 printf("\n\t\t\t3. Update Student Information");
353 printf("\n\t\t\t4. Delete Student Information");
354 printf("\n\t\t\t5. Search Student Information");
355 printf("\n\t\t\t0. Exit");
356
357 printf("\n\n\n\t\t\tEnter Your Option: ");
358 scanf(" %c", &option);
359
360 switch (option)
361 {
362 case '1':
363 createAccount();
364 break;
365 case '2':
366 displayInfo();
367 break;
368 case '3':
369 updateInfo();
370 break;
371 case '4':
372 deleteInfo();
373 break;
374 case '5':
375 searchInfo();
376 break;
377 case '0':
378 printf("\n\t\t\t====== Thank You ======");
379 break;
380 default:
381 printf("\n\t\t\tInvalid Option, Please Enter Right Option !\n");
382 }
383 }
384 }
385
386 void createAccount()
387 {
388 FILE *fileOne = fopen("studentInfo.bin", "ab+");
389
390 if (fileOne == NULL)
391 {
392 printf("\n\t\t\tError !\n");
393 }
394
395 Student stundentInformation;
396
397 system("cls");
398
399 printf("\t\t\t====== Create Student Account ======\n");
400
401 printf("\n\t\t\tEnter Student's Name : ");
402 getchar();
403 gets(stundentInformation.studentName);
404 printf("\t\t\tEnter Student's ID : ");
405 gets(stundentInformation.studentId);
406 printf("\t\t\tEnter Student's Department : ");
407 gets(stundentInformation.studentDept);
408 printf("\t\t\tEnter Student's Address : ");
409 gets(stundentInformation.studentAddress);
410 printf("\t\t\tEnter Student's Contact Number : ");
411 gets(stundentInformation.studentContactNum);
412 printf("\t\t\tEnter Student's Current CGPA : ");
413 scanf("%f", &stundentInformation.studentCGPA);
414
415 fwrite(&stundentInformation, sizeof(stundentInformation), 1, fileOne);
416
417 printf("\n\n\t\t\tInformations have been stored successfully\n");
418 printf("\n\n\t\t\tEnter any keys to continue.......");
419 getch();
420
421 fclose(fileOne);
422 }
423
424 void displayInfo()
425 {
426 FILE *fileOne = fopen("studentInfo.bin", "rb");
427
428 if (fileOne == NULL)
429 {
430 printf("\n\t\t\tError !\n");
431 }
432
433 Student stundentInformation;
434
435 system("cls");
436
437 printf("\t\t\t\t====== All Students Information ======\n");
438
439 printf("\n\n\t\t%-20s%-13s%-10s%-25s%-15s%-s\n", "Name", "ID", "Dept.", "Address", "Contact", "CGPA");
440 printf("\t\t----------------------------------------------------------------------------------------");
441
442 while (fread(&stundentInformation, sizeof(stundentInformation), 1, fileOne) == 1)
443 {
444 printf("\n\n\t\t%-20s%-13s%-10s%-25s%-15s%-.2f", stundentInformation.studentName, stundentInformation.studentId, stundentInformation.studentDept, stundentInformation.studentAddress, stundentInformation.studentContactNum, stundentInformation.studentCGPA);
445 }
446
447 printf("\n\n\t\tEnter any keys to continue.......");
448 getch();
449
450 fclose(fileOne);
451 }
452
453 void updateInfo()
454 {
455 FILE *fileOne = fopen("studentInfo.bin", "rb");
456 FILE *temp = fopen("temp.bin", "wb");
457
458 Student studentInformation, tempInformation;
459
460 int choice, flag = 0;
461
462 if (fileOne == NULL || temp == NULL)
463 {
464 printf("\n\t\t\tError !\n");
465 }
466
467 system("cls");
468
469 printf("\t\t\t\t====== Update Students Information ======\n");
470
471 printf("\n\t\t\tEnter Student's ID : ");
472 getchar();
473 gets(tempInformation.studentId);
474
475 while (fread(&studentInformation, sizeof(studentInformation), 1, fileOne) == 1)
476 {
477 if (strcmp(studentInformation.studentId, tempInformation.studentId) == 0)
478 {
479 flag++;
480 printf("\n\t\t\tChoose your option :\n\t\t\t1. Update Student Name\n\t\t\t2. Update Student Dept.\n\t\t\t3. Update Student Address\n\t\t\t4. Update Student Contact No.\n\t\t\t5. Update Student CPGA");
481 printf("\n\n\t\t\tEnter Your Option : ");
482 scanf("%d", &choice);
483 if (choice == 1)
484 {
485 printf("\n\t\t\tEnter Student's Name to Update: ");
486 getchar();
487 gets(tempInformation.studentName);
488 strcpy(studentInformation.studentName, tempInformation.studentName);
489
490 fwrite(&studentInformation, sizeof(studentInformation), 1, temp);
491 printf("\n\n\t\t\tUpdated successfully!\n\n");
492 }
493 else if (choice == 2)
494 {
495 printf("\n\t\t\tEnter Student's Department to Update: ");
496 getchar();
497 gets(tempInformation.studentDept);
498 strcpy(studentInformation.studentDept, tempInformation.studentDept);
499
500 fwrite(&studentInformation, sizeof(studentInformation), 1, temp);
501 printf("\n\n\t\t\tUpdated successfully!\n\n");
502 }
503 else if (choice == 3)
504 {
505 printf("\n\t\t\tEnter Student's Address to Update: ");
506 getchar();
507 gets(tempInformation.studentAddress);
508 strcpy(studentInformation.studentAddress, tempInformation.studentAddress);
509
510 fwrite(&studentInformation, sizeof(studentInformation), 1, temp);
511 printf("\n\n\t\t\tUpdated successfully!\n\n");
512 }
513 else if (choice == 4)
514 {
515 printf("\n\t\t\tEnter Student's Contact Number to Update: ");
516 getchar();
517 gets(tempInformation.studentContactNum);
518 strcpy(studentInformation.studentContactNum, tempInformation.studentContactNum);
519
520 fwrite(&studentInformation, sizeof(studentInformation), 1, temp);
521 printf("\n\n\t\t\tUpdated successfully!\n\n");
522 }
523 else if (choice == 5)
524 {
525 printf("\n\t\t\tEnter Student's CGPA to Update: ");
526 scanf("%f", &tempInformation.studentCGPA);
527 studentInformation.studentCGPA = tempInformation.studentCGPA;
528
529 fwrite(&studentInformation, sizeof(studentInformation), 1, temp);
530 printf("\n\n\t\t\tUpdated successfully!\n\n");
531 }
532 else
533 {
534 printf("\n\t\t\tInvalid Option.");
535 fwrite(&studentInformation, sizeof(studentInformation), 1, temp);
536 }
537 }
538 else
539 {
540 fwrite(&studentInformation, sizeof(studentInformation), 1, temp);
541 }
542 }
543
544 fclose(fileOne);
545 fclose(temp);
546
547 remove("studentInfo.bin");
548 rename("temp.bin", "studentInfo.bin");
549
550 if (flag == 0)
551 {
552 printf("\n\t\t\tStudent Id is not found");
553 }
554
555 printf("\n\n\t\t\tEnter any keys to continue.......");
556 getch();
557 }
558
559 void deleteInfo()
560 {
561 FILE *fileOne = fopen("studentInfo.bin", "rb");
562 FILE *temp = fopen("temp.bin", "wb");
563
564 Student studentInformation, tempInformation;
565
566 int choice, flag = 0;
567
568 if (fileOne == NULL || temp == NULL)
569 {
570 printf("\n\t\t\tError !\n");
571 }
572
573 system("cls");
574
575 printf("\t\t\t\t====== Delete Student Information ======\n");
576
577 printf("\n\t\t\tEnter Student's ID : ");
578 getchar();
579 gets(tempInformation.studentId);
580
581 while (fread(&studentInformation, sizeof(studentInformation), 1, fileOne) == 1)
582 {
583 if (strcmp(studentInformation.studentId, tempInformation.studentId) == 0)
584 {
585 flag++;
586 printf("\n\t\t\tAre you sure to delete ??\n\t\t\t\t1. Yes\n\t\t\t\t2. Back\n\t\t\t\tEnter Your Option : ");
587 scanf("%d", &choice);
588 if (choice == 1)
589 {
590 printf("\n\n\t\t\tInformation has been deleted successfully!\n\n");
591 }
592 else if (choice == 2)
593 {
594 fwrite(&studentInformation, sizeof(studentInformation), 1, temp);
595 }
596 else
597 {
598 printf("\n\t\t\tInvalid Option");
599 fwrite(&studentInformation, sizeof(studentInformation), 1, temp);
600 }
601 }
602 else
603 {
604 fwrite(&studentInformation, sizeof(studentInformation), 1, temp);
605 }
606 }
607
608 fclose(fileOne);
609 fclose(temp);
610
611 remove("studentInfo.bin");
612 rename("temp.bin", "studentInfo.bin");
613
614 if (flag == 0)
615 {
616 printf("\n\t\t\tStudent Id is not found");
617 }
618
619 printf("\n\n\t\t\tEnter any keys to continue.......");
620 getch();
621 }
622
623 void searchInfo()
624 {
625 FILE *fileOne = fopen("studentInfo.bin", "rb");
626
627 Student studentInformation;
628
629 int choice, flag = 0;
630 char studentID[20], studentDept[10];
631
632 if (fileOne == NULL)
633 {
634 printf("\n\t\t\tError !\n");
635 }
636
637 system("cls");
638
639 printf("\t\t\t\t====== Search Student Information ======\n");
640
641 printf("\n\t\t\tChoose your option :\n\t\t\t1. Search by Student ID\n\t\t\t2. Search by Student Department");
642 printf("\n\n\t\t\tEnter Your Option : ");
643 scanf("%d", &choice);
644
645 if (choice == 1)
646 {
647 system("cls");
648 printf("\t\t\t\t====== Search Student Information ======\n");
649 printf("\n\n\t\t\tEnter Student ID : ");
650 getchar();
651 gets(studentID);
652 while (fread(&studentInformation, sizeof(studentInformation), 1, fileOne) == 1)
653 {
654 if (strcmp(studentInformation.studentId, studentID) == 0)
655 {
656 flag++;
657 printf("\n\t\t\tStudent Name : %s\n\t\t\tStudent ID : %s\n\t\t\tStudent Department : %s\n\t\t\tStudent Address : %s\n\t\t\tStudent Contact No. : %s\n\t\t\tStudent CGPA : %.2f\n", studentInformation.studentName, studentInformation.studentId, studentInformation.studentDept, studentInformation.studentAddress, studentInformation.studentContactNum, studentInformation.studentCGPA);
658 }
659 }
660 if (flag == 0)
661 {
662 printf("\n\t\t\tStudent ID is not found");
663 }
664 }
665 else if (choice == 2)
666 {
667 system("cls");
668 printf("\t\t\t\t====== Search Student Information ======\n");
669 printf("\n\n\t\t\tEnter Student Department : ");
670 getchar();
671 gets(studentDept);
672 printf("\n\n\t\t%-20s%-13s%-10s%-25s%-15s%-s\n", "Name", "ID", "Dept.", "Address", "Contact", "CGPA");
673 printf("\t\t----------------------------------------------------------------------------------------");
674 while (fread(&studentInformation, sizeof(studentInformation), 1, fileOne) == 1)
675 {
676 if (stricmp(studentInformation.studentDept, studentDept) == 0)
677 {
678 flag++;
679 printf("\n\n\t\t%-20s%-13s%-10s%-25s%-15s%-.2f", studentInformation.studentName, studentInformation.studentId, studentInformation.studentDept, studentInformation.studentAddress, studentInformation.studentContactNum, studentInformation.studentCGPA);
680 }
681 }
682 if (flag == 0)
683 {
684 printf("\n\t\t\tStudent Id is not found");
685 }
686 }
687 else
688 {
689 printf("\n\t\t\tInvalid Option");
690 }
691
692 fclose(fileOne);
693
694 printf("\n\n\n\t\t\tEnter any keys to continue.......");
695 getch();
696 }
What I have tried:
basically my code is to create a 'program' for student management
but it won't end at line 311.
help