Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

In C Language This program's purpose is to create a singly linked-list for cars to keep track of inventory. To do this, I'm using structures,

In C Language

This program's purpose is to create a singly linked-list for cars to keep track of inventory. To do this, I'm using structures, one struct car, and one struct for list. The program gets input from the command line with car.txt file

1. Fill in the 3 function prototypes given above main() in the starter code according to the function descriptions posted below the starter code image.

Function Prototypes to fill:

void listInitializer (list_t *list, FILE *inFile); void initializeFromFile (list_t *list, FILE *inFile); car_s *newCar (FILE *inFile);

Starter Code:

image text in transcribed

Function Needed to be filled;

image text in transcribed

Starter Code to Copy:

typedef struct car { char type[15]; // sports car, truck, convertible etc char make[20]; char model[30]; char engine[15]; // V6, V8, V4 etc int hp; // horse power char color[25]; int length; // length of car in feet double base_price; double total_price; accessories_t extras; struct car *next; } car_s;

typedef struct list { car_s *head; car_s *tail; int size; } list_t;

void listInitializer (list_t *list, FILE *inFile); void initializeFromFile (list_t *list, FILE *inFile); car_s *newCar (FILE *inFile);

int main(int argc, char *argv) { list_t *list()=newList();

FILE* inFile = NULL; //Opening .txt file inFile = fopen(argv[1], "r");

//Error message if null or does not exist, return -1 if (inFile == NULL){ printf("Could not open file. "); return -1; // -1 indicates error }

initializeFromFile (list_t *list, FILE *inFile);

return 0; }

list_t *newList() //Creating list { list_t *point = (list_t *)malloc(sizeof(list_t));

point->head = NULL; point->tail = NULL; point->size = 0;

return point; }

car.txt

sport car,BMW,330i,V6,700,Red,13,134595.00,135945.00,1,200,0,250,450,450,0

truck,Ford,F150,V8,550,Green,13,86430.00,87630.00,0,0,250,200,500,250,0

sport car,Mercdes,sl500,V6,440,Blue,13,26895.00,27745.00,0,250,0,0,350,250,0

typedef struct car { char type [15]; // sports car, truck, convertible etc char make [20]; char model[30]; char engine [15]; // V6, V8, V4 etc int hp: // horse power char color [25]; int length; // length of car in feet double base_price; double total_price; accessories_t extras; struct car *next; } car_s; typedef struct list { car_s *head; car_s *tail; int size; } list_t; void listInitializer (list_t *list, FILE *inFile); void initializeFromFile (list_t *list, FILE *inFile); car_s *newCar (FILE *inFile); int main(int argc, char *arg) { list_t *list()=newList(); 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 FILE* inFile = NULL; //Opening .txt file inFile = fopen(argv[1], "-"); //Error message if null or does not exist, return -1 if (inFile == NULL) { printf("Could not open file. "); return -1; // -1 indicates error } initializeFromFile (list_t *list, FILE *inFile); return 0; } list_t *newList() //Creating list { list_t *point = (list_t *)malloc(sizeof(list_t)); point->head NULL; point->tail = NULL; point->size = 0; return point; } void listInitializer (list_t *list, FILE *inFile); - This function is called from initializeFromFile(): This funtion calls newcar () to create and initialize a new car from the file which it then adds to the end of the list. This function also increments the list size for each car added. void initializeFromFile (list_t *list, FILE *inFile); -Calls the listInitializer() function, which sends the input file pointer (the file specified at command-line and opened in int main(int argc, char *argv) ) -Calls listInitializer () in a loop until the end of the file car s *newCar (FILE *inFile); Called by the listInitializer () function. Creates and initializes a car node from the input file pointer passed in. Returns a pointer to the car that was just created. new

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Database And Expert Systems Applications 33rd International Conference Dexa 2022 Vienna Austria August 22 24 2022 Proceedings Part 1 Lncs 13426

Authors: Christine Strauss ,Alfredo Cuzzocrea ,Gabriele Kotsis ,A Min Tjoa ,Ismail Khalil

1st Edition

3031124227, 978-3031124228

More Books

Students also viewed these Databases questions

Question

What is American Polity and Governance ?

Answered: 1 week ago

Question

3. Would you say that effective teamwork saved their lives?

Answered: 1 week ago