static void makeTags (cookedArgs *args) { clock_t timeStamps [3]; boolean resize = FALSE; boolean files = (boolean)(! cArgOff (args) || Option.fileList != NULL || Option.filter); if (! files) { if (filesRequired ()) error (FATAL, "No files specified. Try \"%s --help\".", getExecutableName ()); else if (! Option.recurse && ! etagsInclude ()) return; } #define timeStamp(n) timeStamps[(n)]=(Option.printTotals ? clock():(clock_t)0) if ((! Option.filter) && (! Option.printLanguage)) openTagFile (); timeStamp (0); if (! cArgOff (args)) { verbose ("Reading command line arguments\n"); resize = createTagsForArgs (args); } if (Option.fileList != NULL) { verbose ("Reading list file\n"); resize = (boolean) (createTagsFromListFile (Option.fileList) || resize); } if (Option.filter) { verbose ("Reading filter input\n"); resize = (boolean) (createTagsFromFileInput (stdin, TRUE) || resize); } if (! files && Option.recurse) resize = recurseIntoDirectory ("."); timeStamp (1); if ((! Option.filter) && (!Option.printLanguage)) closeTagFile (resize); timeStamp (2); if (Option.printTotals) printTotals (timeStamps); #undef timeStamp }
int main() { long int clockNumber[NUM_EMPL] = {98401,526488,765349,34645,127615}; /* unique ID */ float gross[NUM_EMPL]; /* Gross pay */ float hours[NUM_EMPL]; /* Hours worked in a given week */ float overtime[NUM_EMPL]; /* Overtime hours */ float wageRate[NUM_EMPL] = {10.60,9.75,10.50,12.25,8.35}; /* hourly wage rate */ float sumWages; /* Sum of wages per hour */ float sumHours; /* Sum of Hours worked in a given week */ float sumOver; /* Sum of overtime hours */ float sumGross; /* Sum of gross pay in a given week */ float avgWages; /* Average of wage rates */ float avgHours; /* Average hours worked */ float avgOver; /* Average overtime hours worked */ float avgGross; /* Average gross pay for the week */ int i; /* Loop and array index */ for (i = 0; i < NUM_EMPL; ++i) { hours[i] = getHours (clockNumber[i]); /* Calls user's input */ overtime[i] = calcOvertime (hours[i]); /* Calculates overtime */ gross[i] = calcGross (overtime[i], hours[i], wageRate[i]); /* calculates gross */ sumWages = sumWageRate (wageRate[i]); /* Sums all wages */ sumHours = sumHoursWorked (hours[i]); /* Sums all hours */ sumOver = sumOvertime (overtime[i]); /* Sums overtime */ sumGross = sumGrossPay (gross[i]); /* Sums gross pay*/ } avgWages = avgWageRate (sumWages); /* Calculates avg wage */ avgHours = avgHoursWorked (sumHours); /* Calculates avg hours */ avgOver = avgOvertime (sumOver); /* Calculates avg overtime */ avgGross = avgGrossPay (sumGross); /* Calculates avg gross */ printf ("\n"); /* New line for output */ printf ("Clock# \tWages \tHours \tOvTime \tGross\n"); /* Display table headings */ printf ("------ \t------ \t------ \t------ \t------ \n"); /* Format display header */ printData (clockNumber, wageRate, hours, overtime, gross, NUM_EMPL); /* Prints by reference */ printf ("------ \t------ \t------ \t------ \t------ \n"); /* Format display header*/ printTotals (sumWages, sumHours, sumOver, sumGross); /* Function prints totals */ printAvgs (avgWages, avgHours, avgOver, avgGross); /* Function prints averages */ return (0); }