1 /*
2 *Main.c
3 *B11-分支-11. 計算工資(15)
4 *Created on: 2014年6月3日
5 *Author: Boomkeeper
6 *
7 ******測試未通過*********
8 */
9
10 #include <stdio.h>
11 #include <stdlib.h>
12
13 float salary=0;
14
15 void newStaff(int *worktime)
16 {
17 //printf("現在開始執行newStaff()\n");
18 if(*worktime<=40)
19 {
20 //printf("現在開始計算<=40\n");
21 salary=(*worktime)*30;
22 printf("%.2f\n",salary);
23 }
24 else
25 {
26 //printf("現在開始計算>40\n");
27 salary=(*worktime-40)*30*1.5+40*30;
28 printf("%.2f\n",salary);
29 }
30 }
31
32 void oldStaff(int *worktime)
33 {
34 //printf("現在開始執行oldStaff()\n");
35 if(*worktime<=40)
36 {
37 //printf("現在開始計算<=40\n");
38 salary=(*worktime)*50;
39 printf("%.2f\n",salary);
40 }
41 else
42 {
43 //printf("現在開始計算>40\n");
44 salary=(*worktime-40)*30*1.5+40*50;
45 printf("%.2f\n",salary);
46 }
47 }
48
49 int main()
50 {
51 int workTime=0,workYear=0;
52 int *worktime=&workTime,*workyear=&workYear;
53
54 scanf("%i %i",workyear,worktime);
55
56 if(*worktime<0 || *workyear<0)//小於0的數據不正常
57 exit(0);
58 if(*worktime>=(7*24))//一周工作時數超過7*24不正常
59 exit(0);
60
61 if(*workyear<5)
62 newStaff(worktime);
63 else
64 oldStaff(worktime);
65
66 return 0;
67 }
接下來的幾道題都比較郁悶,都沒有完全通過,部分測試點的返回結果錯誤,搞不好又是審題的原因,但是我仔仔細細把題目看了好幾遍了...