I'm trying to figure out how to work out the selection for when the input information is not present in the text file, the user will be notified. For now when I run my code and input an item that's not in the text file, it just print out the last item in the text file. I'm really stuck after several hours of thinking how to solve this problem. Your help is greatly appreciated.
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<conio.h>
#include<ctype.h>
int main()
{
FILE *items;
char pName[20];
float pPrice;
char p1Name[20];
int found=0, i=9;
char respond='y';
items=fopen("Product_Name_Price.txt", "r");
if(items==NULL)
{
fprintf(stderr, "Can't open file Product_Name_Price.txt!\n");
exit(1);
}
printf("File has been successfully opened\n");
while(tolower(respond) == 'y')
{
items=fopen("Product_Name_Price.txt", "r");
printf("Enter the name of the product you are looking for\n");
scanf("%s", p1Name);
while(!feof(items))
{
fscanf(items, "%s%f", pName, &pPrice);
i=strcmp(p1Name, pName);
if(i == 0)
{
found=1;
break;
}
else
{
found=0;
}
}
if(found=1)
{
printf("%s\t%.2f\n", pName, pPrice);
}
else
{
printf("No such product information in the database\n");
}
printf("Do you want to look for more item? (Y/N)\n");
scanf(" %c", &respond);
fclose(items);
}
}