the workshop is based on functions. I am given a main program that it not to be changed and a source.c and source.h program I am to write my code in. I have written the code just having trouble callin

#define _CRT_SECURE_NO_WARNINGS // System Libraries #include #include "w6p1.h" // User Libraries int i; struct CatFoodInfo cat = { 0 , 0 , 0, 0 }; // 1. Get user input of int type and validate for a positive non-zero number // (return the number while also assigning it to the pointer argument) int getIntPositive (int * x) { int value; int NL; scanf("%d%d", &value, &NL); if (NL != '\n') { printf("ERROR: Enter a positive value: ERROR: Enter a positive value: "); scanf("%d%c", &value, &NL); } if (x != NULL) *x = value; return value; } // 2. Get user input of double type and validate for a positive non-zero number // (return the number while also assigning it to the pointer argument) double getDoublePositive(double * x) { double value; double NL; scanf("%lf%lf", &value, &NL); if (NL != '\n') { printf("ERROR: Enter a positive value: ERROR: Enter a positive value: "); scanf("%lf%c", &value, &NL); if (x != NULL) *x = value; return value; } } // 3. Opening Message (include the number of products that need entering) void openingMessage(void) { printf("\n"); printf("===========================\n"); printf("Starting Main Program Logic\n"); printf("===========================\n"); printf("\n"); printf("Cat Food Cost Analysis\n"); printf("======================\n"); printf("\n"); printf("Enter the details for %d dry food bags of product data for analysis.\n", MAX); printf("NOTE: A 'serving' is %dg\n", GRAMS); return; } // 4. Get user input for the details of cat food product int getCatFoodInfo() { for (i = 0; i < MAX; i++) { printf("\n"); printf("Cat Food Product #%d\n", (i + 1)); printf("--------------------\n"); printf("SKU : "); scanf("%d", &cat.SKU[i]); cat.SKU[i] = getIntPositive(NULL); printf("PRICE : "); scanf("%d", &cat.price[i]); cat.price[i] = getDoublePositive(NULL); printf("WEIGHT (LBS) : "); scanf("%d", &cat.lbs[i]); cat.lbs[i] = getDoublePositive(NULL); printf("CALORIES/SERV.: "); scanf("%d", &cat.CalPerServ[i]); cat.CalPerServ[i] = getIntPositive(NULL); } return; } // 5. Display the formatted table header void displayCatFoodHeader() { printf("SKU $Price Bag-lbs Cal/Serv\n"); printf("------- ---------- ---------- --------\n"); } // 6. Display a formatted record of cat food data void displayCatFoodData() { for (i = 0; i < MAX; i++) { printf("%07d %10.2lf %10.1lf %8d\n", cat.SKU[i], cat.price[i], cat.lbs[i], cat.CalPerServ[i]); } } // 7. Logic entry point int start() { return; }