首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >C语言刷题随记 ——奖金分配

C语言刷题随记 ——奖金分配

作者头像
繁依Fanyi
发布2023-05-07 17:32:11
发布2023-05-07 17:32:11
7530
举报

题目

1. 题目描述

企业发放的奖金根据利润提成。利润(I)低于或等于 10 万元时,奖金可提 10%;

利润高于 10 万元,低于 20 万元时,低于 10 万元的部分按 10% 提成,高于 10 万元的部分,可提成 7.5%;

20 万到 40 万之间时,高于 20 万元的部分,可提成 5%;40 万到 60 万之间时高于 40 万元的部分,可提成 3%;

60 万到 100 万之间时,高于 60 万元的部分,可提成 1.5%,高于 100 万元时,超过 100 万元的部分按 1%提成,从键盘输入当月利润 I,求应发放奖金总数?

2. 程序分析

请利用数轴来分界,定位。注意定义时需把奖金定义成长整型。

思路

可以尝试用数轴,脑图等工具把文中题目分成几个部分,然后使用 if 语句对各种不同的情况分开讨论。

题解

代码语言:javascript
复制
#include <stdio.h>

int main()
{
    long int i;
    int bonus1,bonus2,bonus4,bonus6,bonus10,bonus;
    scanf("%ld",&i);
    bonus1=100000*0.1;bonus2=bonus1+100000*0.75;
    bonus4=bonus2+200000*0.5;
    bonus6=bonus4+200000*0.3;
    bonus10=bonus6+400000*0.15;

    if(i<=100000) bonus=i*0.1;
    else if(i<=200000) bonus=bonus1+(i-100000)*0.075;
    else if(i<=400000) bonus=bonus2+(i-200000)*0.05;
    else if(i<=600000) bonus=bonus4+(i-400000)*0.03;
    else if(i<=1000000) bonus=bonus6+(i-600000)*0.015;
    else bonus=bonus10+(i-1000000)*0.01;

    printf("bonus=%d",bonus);

    return 0;
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-04-05,如有侵权请联系 cloudcommunity@tencent.com 删除
目录
  • 题目
    • 1. 题目描述
    • 2. 程序分析
  • 思路
  • 题解
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档