Use for loops to process the data for 5 employees.
One loop to load the data
One loop to print the output.
In for loops, if any of the entered fields are –1, break out of the loop immediately after getting -1
Update the output as shown in the sample data.
Use arrays to store the user input.
I have a problem with breaking out of the loop. I think the system is reading it as an integer, not a character.
I also have a problem with looping the output. It is not looping the number of times the user has entered the info.
#include <stdio.h>
int main()
{
char name[5][10];
float hourswork[10];
float hourspay[10];
float grosspay[10];
float taxes[10];
float netpay[10];
int i = 0;
for (i = 0; i < 5; i++)
{
printf("Hello, enter your name: \n");
scanf("%s", &name[i][10]);
printf("Enter your hourly wage: \n");
scanf("%f", &hourspay[i]);
printf("Enter the hours you have worked \n");
scanf("%f", &hourswork[i]);
if (hourswork[i] <= 40)
{
grosspay[i] = hourspay[i] * hourswork[i];
}
else if (hourswork[i] > 40)
{
grosspay[i] = (40 * hourspay[i]) + (((hourswork[i] - 40) * 1.5) * hourspay[i]);
}
taxes[i] = grosspay[i] * 0.2;
if (name[i][10] == -1||hourspay[i] == -1||hourswork[i] == -1)
{
break;
}
}
for (i = 0; i < 5; i++)
{
printf("\n%c's Pay:\n", name[i][10]);
printf("Hourly Rate: %.2f\n", hourspay[i]);
printf("Hours Worked: %.2f\n", hourswork[i]);
printf("Gross Pay: %.2f\n", grosspay[i]);
printf("Taxes: %.2f\n", taxes[i]);
netpay[i] = grosspay[i] - taxes[i];
printf("Net Pay: %.2f\n\n", netpay[i]);
}