****利润(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,求应发放奖金总数?
程序分析:请利用数轴来分界,定位。注意定义时需把奖金定义成长整型。/
#include “stdio.h”
void main()
{
double i;
double bonus10,bonus20,bonus40,bonus60,bonus100,bonus;
printf(“你的净利润为:\n”);
scanf("%lf",&i);
bonus10=1000000.1;
bonus20=bonus10+1000000.075;
bonus40=bonus20+2000000.05;
bonus60=bonus40+4000000.03;
bonus100=bonus60+6000000.015;
if(i<=100000)
{
bonus=i*0.1;
}
else if(i<=200000)
{
bonus=bonus10+(i-100000)*0.075;
}
else if(i<=400000)
{
bonus=bonus20+(i-200000)*0.05;
}
else if(i<=600000)
{
bonus=bonus40+(i-400000)*0.03;
}
else if(i<=1000000)
{
bonus=bonus60+(i-600000)*0.015;
}
else if(i>10000)
{
bonus=bonus100+(i-100000)*0.01;
}
printf("提成为:bonus=%lf",bonus);
printf("\n");
}
#if 0
#include <stdio.h>
#define WAN 10000
void main()
{
double I = 0; // 利润
double B = 0; // 奖金
scanf("%lf", &I);
I /= WAN;
if (I > 100 * WAN)
{
B += ((I - 100) * 0.01);
I = 100;
}
if (I > 60)
{
B += ((I - 60) * 0.015);
I = 60;
}
if (I > 40)
{
B += ((I - 40) * 0.03);
I = 40;
}
if (I > 20)
{
B += ((I - 20) * 0.05);
I = 20;
}
if (I > 10)
{
B += ((I - 10) * 0.075);
I = 10;
}
B += (I * 0.1);
printf("%lf", B);
}
#endif
#if 0
#include<stdio.h>
int main()
{
int i;
double lirun;
double jiangjin = 0;
float fanwei[] = {100000, 200000, 400000, 600000, 1000000};
float ticheng[] = {0.1, 0.075, 0.05, 0.03, 0.015, 0.01};
printf(“您好,请问您的净利润是多少?\n”);
scanf("%lf", &lirun);
for (i=0;i<5;i++)
{
if (lirun < fanwei[i])
{
jiangjin += lirun * ticheng[i];
break;
}
else
{
jiangjin += fanwei[i] * ticheng[i];
lirun -= fanwei[i];
}
}
printf(“奖金是%.2lf\n”, jiangjin);
return 0;
}
#endif