Advertisement
Guest User

Untitled

a guest
Apr 4th, 2020
231
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 8.26 KB | None | 0 0
  1. #include<stdio.h>
  2. #include<string.h>
  3. #include<conio.h>
  4. #include<stdlib.h>
  5.  
  6. void login();
  7. void addrecord();
  8. void searchrecord();
  9. void viewrecord();
  10. void deleterecord();
  11.  
  12. struct record
  13. {
  14.     char id[10];
  15.     char name[30];
  16.     char age[10];
  17.     char gender[10];
  18.     char crime[40];
  19.     char punishment[50];
  20. } a;
  21.  
  22.     void login()
  23. {
  24.     char user[10];
  25.     char pass[10];
  26.     int i,a=0 ;
  27.  
  28.     do
  29.     {
  30.         printf("\n  **************************  LOGIN FORM  **************************  ");
  31.         printf(" \n                       ENTER USERNAME:-");
  32.         scanf("%s", user);
  33.         printf(" \n                       ENTER PASSWORD:-");
  34.  
  35.         for(i=0; i<4; i++)
  36.         {
  37.             pass[i] = getch();
  38.             printf("*");
  39.         }
  40.  
  41.         pass[i] = '\0';
  42.  
  43.         if((strcmpi(pass, "pass") == 0) && (strcmp(user, "user") == 0))
  44.         {
  45.             printf("  \n\n\nWELCOME TO PRISON MANAGEMENT SYSTEM !!");
  46.             printf("\n\n\n\t\t\t\tPress any key to continue...");
  47.             getch();
  48.             break;
  49.         }
  50.         else
  51.             printf("\n SORRY !!!!  LOGIN IS UNSUCESSFUL");
  52.         printf("\n PRESS ANY KEY TO TRY AGAIN!!");
  53.         a++;
  54.         getch();
  55.     }
  56.     while(a);
  57. }
  58.  
  59. void addrecord()
  60. {
  61.     system("cls");
  62.     FILE *fp ;
  63.     char another='Y',id[10];
  64.     int choice;
  65.  
  66.     printf("\n\n\t\t***************************\n");
  67.     printf("\t\t* WELCOME TO THE ADD MENU *");
  68.     printf("\n\t\t***************************\n\n");
  69.  
  70.     fp = fopen ("file", "ab+" ) ;
  71.  
  72.     if ( fp == NULL )
  73.     {
  74.         fp=fopen("file","wb+");
  75.         if(fp==NULL)
  76.         {
  77.             printf("\nSYSTEM ERROR...");
  78.             printf("\nPRESS ANY KEY TO EXIT");
  79.             getch();
  80.             return ;
  81.         }
  82.     }
  83.  
  84.     while ( another == 'Y'|| another=='y' )
  85.  
  86.     {
  87.         choice=0;
  88.         fflush(stdin);
  89.  
  90.         printf ( "\n\tENTER PRISONER ID:\t");
  91.         scanf("%s",id);
  92.  
  93.         rewind(fp);
  94.  
  95.         while(fread(&a,sizeof(a),1,fp)==1)
  96.         {
  97.             if(strcmp(a.id,id)==0)
  98.             {
  99.                 printf("\n\tTHE RECORD ALREADY EXISTS.\n");
  100.                 choice=1;
  101.             }
  102.         }
  103.  
  104.         if(choice==0)
  105.         {
  106.             strcpy(a.id,id);
  107.  
  108.             printf("\tENTER PRISONER NAME: ");
  109.             fflush(stdin);
  110.             gets(a.name);
  111.  
  112.             printf("\tENTER GENDER: ");
  113.             gets(a.gender);
  114.             fflush(stdin);
  115.  
  116.             printf("\tENTER AGE: ");
  117.             gets(a.age);
  118.             fflush(stdin);
  119.  
  120.             printf("\tENTER CRIME: ");
  121.             gets(a.crime);
  122.             fflush(stdin);
  123.  
  124.             printf("\tENTER PUNISHMENT: ");
  125.             gets(a.punishment);
  126.             fflush(stdin);
  127.  
  128.             fwrite ( &a, sizeof ( a ), 1, fp ) ;
  129.             printf("\nYOUR RECORD IS ADDED...\n");
  130.         }
  131.  
  132.         printf ( "\n\tADD ANOTHER RECORD...(Y/N) \t" ) ;
  133.         fflush ( stdin ) ;
  134.         another = getch( ) ;
  135.     }
  136.  
  137.     fclose ( fp ) ;
  138.     printf("\n\n\tPRESS ANY KEY TO EXIT...");
  139.     getch();
  140. }
  141.  
  142. void searchrecord()
  143. {
  144.     system("cls");
  145.     FILE *fp ;
  146.     char id[10],choice;
  147.     int ch;
  148.  
  149.     printf("\n\n\t\t*******************************\n");
  150.     printf("\t\t\t* SEARCH MENU *");
  151.     printf("\n\t\t*******************************\n\n");
  152.  
  153.     do
  154.     {
  155.         fflush(stdin);
  156.         fp = fopen ( "file", "rb" ) ;
  157.         printf("\nENTER PRISONER ID:");
  158.         gets(id);
  159.         system("cls");
  160.  
  161.         while ( fread ( &a, sizeof ( a ), 1, fp ) == 1 )
  162.  
  163.  
  164.             if(strcmpi(a.id,id)==0)
  165.             {
  166.                 printf("\nTHE WHOLE RECORD OF ID - %s IS:",id);
  167.                 printf("\n");
  168.                 printf("\nPRISONER'S NAME IS: %s",a.name);
  169.                 printf("\nPRISONER'S GENDER IS: %s",a.gender);
  170.                 printf("\nPRISONER'S AGE IS: %s",a.age);
  171.                 printf("\nPRISONER'S CRIME IS: %s",a.crime);
  172.                 printf("\nPRISONER'S PUNISHMENT IS: %s",a.punishment);
  173.                 printf("\n");
  174.                 break;
  175.  
  176.             }
  177.  
  178.         if(strcmpi(a.id,id)!=0)
  179.         {
  180.             printf("\n\nSORRY!! ID - %s DOSEN'T EXIST!!!",id);
  181.         }
  182.         printf("\n\nWOULD YOU LIKE TO CONTINUE VIEWING...(Y/N):");
  183.         fflush(stdin);
  184.         scanf("%c",&choice);
  185.     }
  186.     while(choice=='Y'||choice=='y');
  187.     fclose (fp) ;
  188.     getch();
  189. }
  190.  
  191. void viewrecord()
  192. {
  193.     system("cls");
  194.     FILE *fp;
  195.  
  196.     printf("\n\n\t\t***************************\n");
  197.     printf("\t\t   * LIST OF PRISONERS *");
  198.     printf("\n\t\t***************************\n\n");
  199.  
  200.     fp=fopen("file","rb");
  201.     rewind(fp);
  202.     while((fread(&a,sizeof(a),1,fp))==1)
  203.     {
  204.         printf("||NOTE:-PRESS ENTER KEY TO LOAD OTHER RECORDS||\n");
  205.         printf("\nPRISONER'S ID: %s",a.id);
  206.         printf("\nPRISONER'S NAME IS: %s",a.name);
  207.         printf("\nPRISONER'S GENDER IS: %s",a.gender);
  208.         printf("\nPRISONER'S AGE IS: %s",a.age);
  209.         printf("\nPRISONER'S CRIME IS: %s",a.crime);
  210.         printf("\nPRISONER'S PUNISHMENT IS: %s",a.punishment);
  211.  
  212.         getch();
  213.         printf("\n\n");
  214.     }
  215.     fclose(fp);
  216.     getch();
  217. }
  218.  
  219. void deleterecord( )
  220. {
  221.     system("cls");
  222.     FILE *fp,*ft ;
  223.     char another = 'Y',id[16];;
  224.     int choice,check;
  225.     char pass[8];
  226.  
  227.     printf("\n\n\t\t*************************\n");
  228.     printf("\t\t* WELCOME TO DELETE MENU*");
  229.     printf("\n\t\t*************************\n\n");
  230.  
  231.     printf("\nENTER PASSWORD\n");
  232.     int i;
  233.     for(  i=0; i<4; i++)
  234.     {
  235.         pass[i]=getch();
  236.         printf("*");
  237.     }
  238.     pass[i]='\0';
  239.     if (strcmpi(pass,"pass")==0)
  240.     {
  241.         printf("\n\t\t*ACCESS GRANTED*\n\n");
  242.         while ( another == 'Y' || another == 'y' )
  243.         {
  244.             fflush(stdin);
  245.             fp = fopen ("file", "rb" ) ;
  246.             if ( fp == NULL )
  247.             {
  248.                 printf("\nTHE FILE DOES NOT EXIST");
  249.                 printf("\nPRESS ANY KEY TO GO BACK.");
  250.                 getch();
  251.                 return ;
  252.             }
  253.             ft = fopen ("temp","wb");
  254.  
  255.             if(ft==NULL)
  256.             {
  257.                 printf("\nSYSTEM ERROR");
  258.                 printf("\nPRESS ANY KEY TO GO BACK");
  259.                 getch();
  260.                 return ;
  261.             }
  262.             printf("\n\tENTER THE ID OF RECORD TO BE DELETED:");
  263.             fflush(stdin);
  264.             gets(id);
  265.  
  266.             while(fread(&a,sizeof(a),1,fp)==1)
  267.  
  268.             {
  269.                 if(strcmp(a.id,id)!=0)
  270.                     fwrite(&a,sizeof(a),1,ft);
  271.             }
  272.             fclose(ft);
  273.             fclose(fp);
  274.             remove("file");
  275.             rename("temp","file");
  276.             printf("\nDELETED SUCCESFULLY...");
  277.             getch();
  278.  
  279.             printf("\n\tDO YOU LIKE TO DELETE ANOTHER RECORD.(Y/N):");
  280.             fflush(stdin);
  281.             scanf("%c",&another);
  282.         }
  283.         printf("\n\n\tPRESS ANY KEY TO EXIT...");
  284.  
  285.         getch();
  286.     }
  287.     else
  288.     {
  289.         printf("\nSorry!Invalid password\n");
  290.         exit(0);
  291.     }
  292. }
  293.  
  294. int main()
  295. {
  296.     login();
  297.     int ch;
  298.  
  299.     system("cls");
  300.     while(1)
  301.     {
  302.         printf("\n\n\t\t***********************************\n");
  303.         printf("\t\t\t*PRISONER RECORD*\n");
  304.         printf("\t\t***********************************");
  305.         printf("\n\n\t\t\t\tMAIN MENU:");
  306.         printf("\n\n\t\t\tADD RECORD\t[1]");
  307.         printf("\n\t\t\tSEARCH RECORD\t[2]");
  308.         printf("\n\t\t\tVIEW RECORD\t[3]");
  309.         printf("\n\t\t\tDELETE RECORD\t[4]");
  310.         printf("\n\t\t\tEXIT\t\t[5]");
  311.         printf("\n\n\t\t\tENTER YOUR CHOICE:");
  312.         scanf("%d",&ch);
  313.  
  314.         switch(ch)
  315.         {
  316.         case 1:
  317.             addrecord();
  318.             break;
  319.  
  320.         case 2:
  321.             searchrecord();
  322.             break;
  323.  
  324.         case 3:
  325.             viewrecord();
  326.             break;
  327.  
  328.         case 4:
  329.             deleterecord();
  330.             break;
  331.  
  332.         case 5:
  333.             system("cls");
  334.             printf("\n\n\t\tHAVE A GOOD DAY!!");
  335.             getch();
  336.             exit(0);
  337.  
  338.         default:
  339.             printf("\nYOU ENTERED WRONG CHOICE.");
  340.             printf("\nPRESS ANY KEY TO TRY AGAIN");
  341.             getch();
  342.             break;
  343.         }
  344.         system("cls");
  345.     }
  346. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement