[英]why does my netpay display no answer?
我正在編寫工資單的代碼。 一個功能詢問用戶工作時間和小時工資。 另一個函數接受小時數和費率作為參數,並計算並返回總工資。 然后將Grosspay發送到將計算並返回payrolltax(.22)的函數。 然后調用一個函數,該函數將接受總薪水和稅收作為參數並返回凈薪。 最后將所有數據發送到一個功能,該功能將顯示所有值(總時數,小時費率,總薪水,稅額和凈額)。 我的netpay顯示0,而tax顯示錯誤的答案。 誰能告訴我我哪里出問題了?
/* Payroll Check */
#include <stdio.h>
float askhoursworked();
float askhourlyrate();
float calculategrosspay(float hours,float rate);
float calculatepayrolltax(float grosspay);
float calculatenetpay(float grosspay,float tax);
float displayallvalues(float ,float ,float,float ,float );
int main()
{
float hours;
float rate;
float grosspay;
float tax;
float netpay;
float values;
hours=askhoursworked();
rate= askhourlyrate();
tax= calculatepayrolltax( grosspay);
netpay= calculatenetpay( grosspay,tax);
grosspay=calculategrosspay( hours, rate);
values= displayallvalues( hours, rate, tax, grosspay, netpay);
return 0;
}
float askhoursworked()
{
float hours;
printf("\n Please enter hours worked \t");
scanf("%f",&hours);
return hours;
}
float askhourlyrate()
{
float rate;
printf("\n Please enter your payrate \t");
scanf("%f",&rate);
return rate;
}
float calculategrosspay(float hours,float rate)
{
float grosspay;
grosspay=hours*rate;
return grosspay;
}
float calculatenetpay(float grosspay,float tax)
{
float netpay;
netpay=grosspay-tax;
return netpay;
}
float calculatepayrolltax(float grosspay)
{
float tax;
tax=grosspay*.22;
return tax;
}
float displayallvalues(float hours,float rate,float tax,float grosspay,float netpay)
{
printf("\n Your total hours are %.2f",hours);
printf("\n Your hourly rate %.2f",rate);
printf("\n Your grosspay is %.2f",grosspay);
printf("\n Your taxes are %.2f",hours);
printf("\n Your netpay is %.2f",netpay);
}
在C語言中,使用單遍編譯器。 這意味着在這里,秩序最重要。 您正在最后計算總薪水。 您正在將其用於計算凈工資和稅金。
這是正確的方法。
hours = askhoursworked ();
rate = askhourlyrate ();
grosspay = calculategrosspay (hours, rate);
tax = calculatepayrolltax (grosspay);
netpay = calculatenetpay (grosspay, tax);
在在線編譯器上檢查
編輯您還以錯誤的方式打印了輸出。
printf ("\n Your total hours are %.2f", hours);
printf ("\n Your hourly rate %.2f", rate);
printf ("\n Your grosspay is %.2f", grosspay);
printf ("\n Your taxes are %.2f", tax);
printf ("\n Your netpay is %.2f", netpay);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.