将这个自定义函数改写用数组Function 应纳税(s)Dim xx = s - 1600Select Case xCase Is < 0: 应纳税 = 0Case Is < 500: 应纳税 = x * 0.05Case Is < 2000: 应纳税 = x * 0.1 - 25Case Is < 5000: 应纳税 = x * 0.15 - 125Case Is < 20000: 应纳税 = x * 0.2 - 375Case Is < 40000: 应纳税 = x * 0.25 - 1375Case Is < 60000: 应纳税 = x * 0.3 - 3375Case Is < 80000: 应纳税 = x * 0.35 - 6375Case Is < 100000: 应纳税 = x * 0.4 - 10375Case Else: 应纳税 = x * 0.45 - 15375End SelectEnd Function
2 回答
幕布斯7119047
TA贡献1794条经验 获得超8个赞
1、因为数组在内存中是一块连续的内存,只要将该数组的首地址传进去,当然就可以访问整个数组了。值得注意的是,由于只传了首地址,函数不知道数组的维数,所以还得把数组的维数传进去,那就可以完全操作该数组了。
2、例:有一个函数声明:void fun( int aa[],int size );或者void fun( int *pa,int size );
以上两种声明都一样。
调用上诉函数时:假设有 int ab[10];
fun( ab,10 )就可以了。
慕工程0101907
TA贡献1887条经验 获得超5个赞
Function
应纳税(s)
Dim
x, arr, k
arr = Array(0, 0, 25, 125, 375, 1375, 3375, 6375, 10375, 15375)
x = s - 1600
k = IIf(x < 0, 0, IIf(x < 500, 1, IIf(x < 2000, 2, IIf(x < 5000, 3, IIf(x < 100000, x / 20000 + 4, 9)))))
应纳税 = x * 0.05 * k - arr(k)
End
Function
- 2 回答
- 0 关注
- 171 浏览
添加回答
举报
0/150
提交
取消