c programming help again

  • From: "John Miller" <n1umj@xxxxxxxxxxx>
  • To: <programmingblind@xxxxxxxxxxxxx>
  • Date: Thu, 25 Oct 2007 23:02:39 -0400

Hi all, now, I'm supposed to make structures here. I did as best as I could but as usual got stuck and was probably way off anyway like last week. I promise, only 2 more after this one, if that, supposedly the next one is real easy, so long as this one is 100% so I may not be looking for help with that one. Thanks, code follows.


(begin code)
#include <stdio.h>

/* function prototypes */

void initData(int *clockNumberPtr,float *wagePtr,float *hoursWorkedPtr);

void getHoursWorked(int entry,int * clockNumberPtr,float *hoursWorkedPtr);

float calculateOverTime(int entry, float *wagePtr,float *hoursWorkedPtr);

float calculateGrossPay(int entry, float *wagePtr,float *hoursWorkedPtr);

void displayEntry(int entry, int *clockNumberPtr,float *wagePtr,float *hoursWorkedPtr);

int main (char *argv, int argc)

struct emp

{ /*get clock info*/

int clockNumber; /*employee number*/

float wage; /* declare wage */

float hoursWorked; /*enter hours worked*/

struct employee emp(5);

int i=0;//index for for loop

initData(clockNumber,wage,hoursWorked);

for (i=0;i<5;i++)

getHoursWorked(i,clockNumber,hoursWorked);

printf("Clock #\tWAge\thours\tOver time\tGross Pay\n");

for (i=0;i<5;i++)

displayEntry(i,clockNumber,wage,hoursWorked);

return(0);

} /*end get clock info*/



void initData(int *clockNumberPtr,float *wagePtr,float *hoursWorkedPtr)

{ /* declaring clock numbers and wage*/

int i; // index for for loop

emp[0].clockNumber=98401 ; /*first employee*/

emp[1].clockNumber=526488; /* second employee*/

emp[2]clockNumber=765349; /*third employee */

emp[3]clockNumber=34645; /*forth employee*/

emp[4]clockNumber=127615; /*fifth employee */

emp[0]wage=10.60; /* first employee wage

emp[1]wage=9.75; /*second employee wage

emp[2]wage=10.50; /* third employee wage */

emp[3]wage=12.25; /*employee 4 wage */

emp[4]wage=8.35; /* fifth employee wage 8/

// init hours worked to 0

for (i=0;i<5;i++)

hoursWorkedPtr[i]=0;

} /*end declaring clock and wage numbers*/

void getHoursWorked(struct employee emp[])

{ /*prompt for hours*/

printf ("Enter hours worked by %d: ",clockNumberPtr[entry]);

scanf_s("%f", &(hoursWorkedPtr[entry]));

} /*end prompt for hours*/

float calculateOverTime(int entry, float *wagePtr,float *hoursWorkedPtr)

{ /* figure out overtime */

float overTimeHours=hoursWorkedPtr[entry]-40;

float overTimePay=0;

if (overTimeHours>0)

overTimePay=overTimeHours*(wagePtr[entry]*1.5);

return (overTimePay);

} /* end figuring out overtime */



float calculateGrossPay(int entry, float *wagePtr,float *hoursWorkedPtr)

{ /* determine gross pay*/

float grossPay=0;

if (hoursWorkedPtr[entry]>40)

grossPay=(40*wagePtr[entry])+calculateOverTime(entry,wagePtr,hoursWorkedPtr);

else

grossPay=wagePtr[entry]*hoursWorkedPtr[entry];

return (grossPay);

} /*end determine gross pay */

void displayEntry(int entry, int *clockNumberPtr,float *wagePtr,float *hoursWorkedPtr)

{ /*desplay results */

printf ("%d\t%0.2f\t%0.2f\t%0.2f\t%0.2f\n",

emp.clockNumber,

emp.wage,

emp.hoursWorked,

calculateOverTime(entry,wagePtr,hoursWorkedPtr),

calculateGrossPay(entry,wagePtr,hoursWorkedPtr));

} /* end desplay output*/

(end code)

__________
View the list's information and change your settings at //www.freelists.org/list/programmingblind

Other related posts: