标签:style blog http io color sp for on 文件
《C和指针》第8章编程练习第2题:
1 /* 2 ** 计算1995年美国公民的个人收入所得税 3 */ 4 5 #include <stdio.h> 6 #include <float.h> // 该头文件中包含double类型能表示的最大的数DBL_MAX 7 8 double single_tax( double income ); 9 10 /* 11 ** 将表格中划分的区间存在数组中 12 */ 13 static double const income_limit[] = { 0, 23350, 56550, 117950, 256500, DBL_MAX }; 14 static double const base_tax[] = { 0, 3502.5, 12798.5, 31832.5, 81710.5 }; 15 static double const percentage[] = { 0.15, 0.28, 0.31, 0.36, 0.396 }; 16 17 int main() 18 { 19 double income; 20 scanf( "%lf", & income ); 21 printf( "%lf", single_tax( income ) ); 22 23 return 0; 24 } 25 26 /* 27 ** 函数,计算相应收入对应上交的税额 28 ** 题目中函数原型的数据类型为float,但测试中发现float不够精确 29 */ 30 double 31 single_tax( double income ) 32 { 33 int range; 34 double tax; 35 36 /* 37 ** 获取税额对应的计算区间 38 */ 39 for( range = 1; income > income_limit[ range ]; ++ range ) 40 ; 41 range --; 42 43 /* 44 ** 税额计算公式 45 */ 46 tax = base_tax[ range ] + ( income - income_limit[ range ] ) * percentage[ range ]; 47 48 return tax; 49 }
标签:style blog http io color sp for on 文件
原文地址:http://www.cnblogs.com/zouhongmey/p/4154987.html