求助,編程小新新,個人所得稅,主要是二維陣列和函式呼叫不會。謝謝大佬指導
uj5u.com熱心網友回復:
題目具體要求是什么呢?uj5u.com熱心網友回復:



uj5u.com熱心網友回復:
倆題目要求 是個截圖,謝謝大佬
uj5u.com熱心網友回復:
沒有細寫,你自己參考著修改吧
#include <stdio.h>
int refer[10][2] =
{
{ 1600, 0},
{ 500, 5},
{ 2000, 10},
{ 5000, 15},
{ 20000, 20},
{ 40000, 25},
{ 60000, 30},
{ 80000, 35},
{ 100000, 40},
{ 100000, 45},
};
float getSalary()
{
float n = -1;
while (1)
{
printf("輸入員工工資:\n");
scanf("%f", &n);
if (n >= 0 && n < 1000000)
return n;
else
{
printf("輸入0-1000000之間的數:\n");
scanf("%f", &n);
}
}
}
float prvtaxcal(float m, int arr[][2], int n)
{
float temp = 0.0;
int i;
if (m <= arr[0][0])
return 0;
else
{
temp = m - arr[0][0];
if ( temp < arr[1][0])
return temp * arr[1][1] / 100.0;
else if (temp > arr[1][0] && temp <= arr[2][0])
return temp * arr[2][1] / 100.0;
else if (temp > arr[2][0] && temp <= arr[3][0])
return temp * arr[3][1] / 100.0;
else if (temp > arr[3][0] && temp <= arr[4][0])
return temp * arr[4][1] / 100.0;
else if (temp > arr[4][0] && temp <= arr[5][0])
return temp * arr[5][1] / 100.0;
else if (temp > arr[5][0] && temp <= arr[6][0])
return temp * arr[6][1] / 100.0;
else if (temp > arr[6][0] && temp <= arr[7][0])
return temp * arr[7][1] / 100.0;
else if (temp > arr[7][0] && temp <= arr[8][0])
return temp * arr[8][1] / 100.0;
else if (temp > arr[9][0])
return temp * arr[9][1] / 100.0;
}
}
int main(void)
{
float salary = 1.0, tax = 0.0;
do
{
salary = getSalary();
tax = prvtaxcal(salary, refer, 9);
printf("工資:%-10.2f, 納稅:%-10.2f\n", salary, tax);
} while (salary > 0);
return 0;
}
uj5u.com熱心網友回復:
謝謝大佬大大的幫助轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/64555.html
標籤:C語言
下一篇:急急急
