I need to write C program that reads from file the car number, miles driven, and gallons used. Calculate the miles per gallon. Calculate the totals and the average MPG.
I only need help with counting miles per gallon.
In output should be :20 But my output is: 1966018914
25 20
24 25
23 24
Can anyone see my code and help me figure it out?!
Here is code:
int main()
{
int car, miles, gas;
int sumMiles = 0;
int sumGas = 0;
int avgMPG = 0;
FILE *inFile, *outFile;
char fname[20];
printf("Enter a file name: ");
gets(fname);
inFile = fopen(fname, "r");
if (inFile == NULL)
{
printf("\nFailed to open file.\n");
exit(1);
}
outFile = fopen("output.txt","w");
if(outFile==NULL)
{
printf("The file was not opened.");
exit(1);
}
printf("\nCar No. Miles Driven Gallons Used\n");
while (fscanf(inFile, "%d %d %d",&car, &miles, &gas) != EOF)
{
printf("%-7d %-15d %d\n",car,miles,gas);
sumMiles += miles;
sumGas += gas;
avgMPG = sumMiles / sumGas;
}
printf("\nThe total miles driven is %d\n", sumMiles);
printf("The total gallons of gas used is %d\n", sumGas);
printf("The average miles per gallon of gas used is %d\n", avgMPG);
printf("File copied succesfully!");
fclose(inFile);
fclose(outFile);
}
This is input file:
123 100 5
345 150 6
678 240 10
901 350 15