鱼C论坛

 找回密码
 立即注册
查看: 1993|回复: 7

[已解决]请求帮助

[复制链接]
发表于 2020-11-2 20:22:33 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
假设个人所得税为:税率×(工资−1600)。请编写程序计算应缴的所得税,其中税率定义为:

当工资不超过1600时,税率为0;
当工资在区间(1600, 2500]时,税率为5%;
当工资在区间(2500, 3500]时,税率为10%;
当工资在区间(3500, 4500]时,税率为15%;
当工资超过4500时,税率为20%。
输入格式:
输入在一行中给出非负工资。

输出格式:
在一行输出个人所得税,精确到小数点后2位。

输入样例1:
1600
输出样例1:
0.00
输入样例2:
1601
输出样例2:
0.05
输入样例3:
3000
输出样例3:
140.00
输入样例4:
4000
输出样例4:
360.00
输入样例5:
5000
输出样例5:
680.00
#include <stdio.h>
int main()
{   
    int a;
    double v,p;
    scanf("%d",&p);
    if(a <= 1600)v = 0.00;
    if(a > 1600 && a < 2500)v = 0.05;
    if(a > 2500 && a <= 3500)v = 0.10;
    if(a > 3500 && a <= 4500)v = 0.15;
    if(a > 4500)v = 0.20;
    p = v*(a - 1600);
    printf("%.2f",p);
    return 0;
}//怎么错了
最佳答案
2020-11-2 20:52:28
本帖最后由 风过无痕1989 于 2020-11-2 20:54 编辑

你哪个变量是干什么的都没搞清楚


  1. #include <stdio.h>
  2. int main()
  3. {
  4.         int a;                           // a 领到的工资
  5.         double v, p;
  6.         scanf("%d", &a);          // 需要输入的是工资
  7.         if (a <= 1600)
  8.                 v = 0.00;
  9.         if (a > 1600 && a < 2500)
  10.                 v = 0.05;
  11.         if (a > 2500 && a <= 3500)
  12.                 v = 0.10;
  13.         if (a > 3500 && a <= 4500)
  14.                 v = 0.15;
  15.         if (a > 4500)
  16.                 v = 0.20;
  17.         p = v * (a - 1600);       // p 是需要交的税费
  18.         printf("%.2f", p);
  19.         return 0;
  20. }
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-11-2 20:32:21 | 显示全部楼层
这题你看看他给的样例里面,5000是不是应该是580,不出意外是测试组出现问题了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-11-2 20:52:28 | 显示全部楼层    本楼为最佳答案   
本帖最后由 风过无痕1989 于 2020-11-2 20:54 编辑

你哪个变量是干什么的都没搞清楚


  1. #include <stdio.h>
  2. int main()
  3. {
  4.         int a;                           // a 领到的工资
  5.         double v, p;
  6.         scanf("%d", &a);          // 需要输入的是工资
  7.         if (a <= 1600)
  8.                 v = 0.00;
  9.         if (a > 1600 && a < 2500)
  10.                 v = 0.05;
  11.         if (a > 2500 && a <= 3500)
  12.                 v = 0.10;
  13.         if (a > 3500 && a <= 4500)
  14.                 v = 0.15;
  15.         if (a > 4500)
  16.                 v = 0.20;
  17.         p = v * (a - 1600);       // p 是需要交的税费
  18.         printf("%.2f", p);
  19.         return 0;
  20. }
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-11-2 22:54:26 | 显示全部楼层
风过无痕1989 发表于 2020-11-2 20:52
你哪个变量是干什么的都没搞清楚

您的代码也没有通过PTA
a.c: In function ‘main’:
a.c:6:9: warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_result [-Wunused-result]
         scanf("%d", &a);
         ^~~~~~~~~~~~~~~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-11-2 23:01:17 | 显示全部楼层
llf123456 发表于 2020-11-2 22:54
您的代码也没有通过PTA
a.c: In function ‘main’:
a.c:6:9: warning: ignoring return value of ‘sc ...

PTAj什么东东?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-11-2 23:13:05 | 显示全部楼层
llf123456 发表于 2020-11-2 22:54
您的代码也没有通过PTA
a.c: In function ‘main’:
a.c:6:9: warning: ignoring return value of ‘sc ...

知道了,就是那种神精病的考试用机,考职称时领教过。

上面的程序是没有问题的,我在VS2015上通过的。我再到网上查一查,看怎么样才能通过
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-11-2 23:24:36 | 显示全部楼层
llf123456 发表于 2020-11-2 22:54
您的代码也没有通过PTA
a.c: In function ‘main’:
a.c:6:9: warning: ignoring return value of ‘sc ...

  1. #include <stdio.h>
  2. int main()
  3. {
  4.         int a;                    // a 领到的工资
  5.         double v, p;
  6.         if( scanf("%d", &a) !=EOF)// 需要输入的是工资
  7.         {                         // 这就是神精病的做法,一定要判断 scanf() 的返回值   
  8.         }
  9.         if (a <= 1600)
  10.                 v = 0.00;
  11.         if (a > 1600 && a < 2500)
  12.                 v = 0.05;
  13.         if (a > 2500 && a <= 3500)
  14.                 v = 0.10;
  15.         if (a > 3500 && a <= 4500)
  16.                 v = 0.15;
  17.         if (a > 4500)
  18.                 v = 0.20;
  19.         p = v * (a - 1600);       // p 是需要交的税费
  20.         printf("%.2f", p);
  21.         return 0;
  22. }
复制代码

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-11-2 23:33:42 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-13 04:02

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表