教師公積金繳納金額計算
功能描述:
某中學教師每月需要根據工資的總額來確定當月需要繳納的公積金,而當月工資除了基本工資1500元以外,還包括績效工資,績效工資和三個因素有關,當月的值班天數,當月的監考次數以及當月的上課次數。(教師每值班一天能夠獲得60元的收入,每監考一次能獲得30元的收入,每上課一次能獲得64元的收入)
公積金的繳納額需要根據工資總額按照一定的比例進行上交。
處理過程描述
輸入:
值班天數:整型,教師每月的值班天數不少於5天,不能超過正常工作日22天。
監考次數:整型,教師監考次數不能超過10次。
上課次數:整型,上課次數不能超過30次。
值班天數,如果非整型輸入,給出錯誤提示,如果輸入范圍錯誤,給出錯誤提示。
監考次數,如果非整型輸入,給出錯誤提示,如果輸入范圍錯誤,給出錯誤提示。
上課次數,如果非整型輸入,給出錯誤提示,如果輸入范圍錯誤,給出錯誤提示。
計算公積金:
工資總額=基本工資+績效工資
績效工資=值班收入+監考收入+上課收入
值班收入=值班天數×值班的天收入
監考收入=監考次數×監考次收入
上課收入=上課次數×上課次收入
需繳納的公積金=工資總額大於5000的部分×0.25+工資總額大於4000小於5000的部分×0.2+工資總額大於2000小於4000的部分×0.15+工資總額小於2000的部分×0.1
輸出:
績效工資總額,工資總額,需要繳納的公積金
測試任務
整個測試所包含的內容:
1、用C語言寫出教師公積金繳納問題的程序,並簡單測試,確保程序基本正確
(特別說明:進一步實現其他任何非整型輸入的情況,比如輸入字符,建議用單獨的函數實現判斷,在主函數中調用此函數判斷值班數/監考數/上課數是否為整數)
2、用visio畫出程序所對應的流程圖
3、寫白盒測試用例,包含語句覆蓋,判定覆蓋,條件覆蓋,判定-條件覆蓋,條件組合覆蓋,基本路徑測試(根據控制流圖,同樣需要使用visio畫出)
4、寫黑盒測試用例,包含等價類劃分法,邊界值法,判定表法(額外補充:時間允許情況下,再用visio畫出因果圖法)
5、兩兩交叉進行測試所有黑盒和白盒測試的用例,比較測試結果和預期的結果
6、形成黑盒測試以及白盒測試的大報告
while(1)
{
nRes = scanf("%d",&nDuty);
if (nRes == 1)
{
if (nDuty >= 5 && nDuty <= 22)
{
break;
}
else if (nDuty < 0)
{
printf("輸入數據有誤,請輸入整數!\n");
printf("輸入老師值班天數,不少於5天,不能超過22天:");
}
else
{
printf("輸入范圍有誤,請輸入整數!\n");
printf("輸入老師值班天數,不少於5天,不能超過22天:");
}
}
else if (nRes == 0)
{
scanf("%*c");
printf("輸入老師值班天數,不少於5天,不能超過22天:");
}
else if (nRes == EOF)
{
break; //強制中斷
}
}
供參考。。