#include <stdio.h>
#include <string.h>
void add();
void search();
struct criminal
{
char name[50];
int casenumber;
char casename[1000];
char punishment[5800];
} c;
int main(void)
{
char ch;
printf("1.add\n2.search\n\n");
scanf("%c", &ch);
switch (ch)
{
case '1':
{
add();
break;
}
case '2':
{
search();
break;
}
}
}
void add()
{
FILE *ptr;
ptr = fopen("cases.txt", "a+");
printf("Enter the name/s of criminal:");
scanf("%[^\n]", c.name);
strupr(c.name);
fflush(stdin);
printf("Enter case number:");
scanf("%d", &c.casenumber);
fflush(stdin);
printf("Enter case name:");
scanf("%[^\n]", &c.casename);
fflush(stdin);
printf("Enter the given punishment :");
scanf("%[^\n]s", c.punishment);
fflush(stdin);
fwrite(&c, sizeof(c), 1, ptr);
fclose(ptr);
printf("Successfull Adding To File");
}
void search()
{
char searchname[50];
int caseSearch;
char ch;
FILE *ptr;
ptr = fopen("cases.txt", "r");
fflush(stdin);
printf("1.search by name\n2.search by case number\n");
scanf("%c", &ch);
switch (ch)
{
case '1':
{
fflush(stdin);
printf("enter name:");
scanf("%[^\n]", &searchname);
strupr(searchname);
while (fread(&c, sizeof(c), 1, ptr))
{
if (strcmp(searchname, c.name) == 0)
{
printf("%s\n%d\n%s\n%s", searchname, c.casenumber, c.casename, c.punishment);
}
}
fclose(ptr);
break;
}
case '2':
{
printf("enter Case number :");
scanf("%d", &caseSearch);
while (fread(&c, sizeof(c), 1, ptr))
{
if (caseSearch == c.casenumber)
{
printf("%s\n%d\n%s\n%s", c.name, c.casenumber, c.casename, c.punishment);
}
}
fclose(ptr);
break;
}
}
}
Nice.
ReplyDeleteVery useful