C语言初学者。向大家请教!

bianchengyisheng 2011-02-23 08:22:03
c语言初学者 向大家请教
程序要求:输入某人的总收入i 计算他缴纳的所得税和他的实际收入
采用switch语句,把收入范围转换成1,2,3...,n的单一整常数,转换公式为:(int)((i-1)/200)+1
对应表:
0<i<=400 1或2
400<i<=600 3
600<i<=1000 4或5
1000<i<=1200 6
1200<i<=1800 7,8或9
1800<i<=2000 10
2000<i 11以上

我想知道上面的转换公式是怎么得出的,请详细说一下?谢谢
...全文
140 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
AnYidan 2011-02-24
  • 打赏
  • 举报
回复
仔细观察,每步是 200,既 i 变化200,则 switch 的变量 +1 ---> 分母 = 200

i 在 200 以内,switch 的变量不变 ---> ( i - 1)/200,整数除法,舍弃小数,保留整数

根据题意, +1修正
weichi0405 2011-02-24
  • 打赏
  • 举报
回复
简单说,就是根据需求(政府需要个人缴纳所得税,税费要收取合适),然后建立数学模型,
由相关专家/学者总结出数学公式~
wxwlll 2011-02-23
  • 打赏
  • 举报
回复
这种公式,是根据观察总结,并验证得出的!
kxcld 2011-02-23
  • 打赏
  • 举报
回复
201到400之间的整数减去1,然后\200都等于1 这个应该知道吧
kxcld 2011-02-23
  • 打赏
  • 举报
回复
比如i=400
400-1=399
399/200=1
1+1=2

同理推算撒 就是这样得出的公式啊
無_1024 2011-02-23
  • 打赏
  • 举报
回复
公式中的200是根据0<i<=400 1或2他们之间的变化看出来的
至于(i - 1) / 200中的i-1是为了在 i = 400之类的最大值时 可以满足条件 自己推导一下就出来了
bianchengyisheng 2011-02-23
  • 打赏
  • 举报
回复
那公式是怎么得出的。谢谢
MSOKD 2011-02-23
  • 打赏
  • 举报
回复
好像是题目硬性规定成这样子的,

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧