c语言 习题5.8参考答案(第二种解法,用switch语句)
2005-11-22 21:19
519 查看
/*
Name: xt5_8_2.c
Copyright: 允许任意copy
Author: 姚果
Date: 22-11-05 20:56
Description: 课本p105页习题5.8参考答案
第二种解法,使用switch语句
*/
main()
{
long i;
float bonus, bon1, bon2, bon4, bon6, bon10;
int c;
bon1=100000*0.1;
bon2=bon1+100000*0.075;
bon4=bon2+200000*0.05;
bon6=bon4+200000*0.03;
bon10=bon6+400000*0.015;
printf("请输入利润i:");
scanf("%ld",&i);
c=i/100000;
if(c>10) c=10;
switch(c)
{
case 0: bonus=1*0.1;break;
case 1: bonus=bon1+(i-100000)*0.075;break;
case 2 :
case 3: bonus=bon2+(i-200000)*0.05; break;
case 4:
case 5: bonus=bon4+(i-400000)*0.03;break;
case 6:
case 7:
case 8:
case 9: bonus=bon6+(i-600000)*0.015;break;
case 10: bonus=bon10+(i-1000000)*0.01;
}
printf("奖金是%10.2f",bonus);
getch();
}
Name: xt5_8_2.c
Copyright: 允许任意copy
Author: 姚果
Date: 22-11-05 20:56
Description: 课本p105页习题5.8参考答案
第二种解法,使用switch语句
*/
main()
{
long i;
float bonus, bon1, bon2, bon4, bon6, bon10;
int c;
bon1=100000*0.1;
bon2=bon1+100000*0.075;
bon4=bon2+200000*0.05;
bon6=bon4+200000*0.03;
bon10=bon6+400000*0.015;
printf("请输入利润i:");
scanf("%ld",&i);
c=i/100000;
if(c>10) c=10;
switch(c)
{
case 0: bonus=1*0.1;break;
case 1: bonus=bon1+(i-100000)*0.075;break;
case 2 :
case 3: bonus=bon2+(i-200000)*0.05; break;
case 4:
case 5: bonus=bon4+(i-400000)*0.03;break;
case 6:
case 7:
case 8:
case 9: bonus=bon6+(i-600000)*0.015;break;
case 10: bonus=bon10+(i-1000000)*0.01;
}
printf("奖金是%10.2f",bonus);
getch();
}
相关文章推荐
- c语言 习题5.8参考答案(第一种解法,用if~else~语句)
- 《C语言及程序设计》实践参考——分段函数求值switch语句版
- 习题5.6参考答案,switch的练习
- C++ Primer【第五版】习题参考答案——第五章(语句)
- 黑马程序员——C语言循环、switch与if语句笔记和习题
- 《C语言及程序设计》实践参考——个人所得税计算器switch语句版
- Day 9:(11)Transact sql语句实训_参考答案
- 【《Python编程: 从入门到实践》习题答案--第五章:<if语句>】
- C语言中的switch语句
- C语言中流程控制语句(if,switch,for,while,do-while,continue,break,return)
- C语言switch语句的用法详解
- neuq oj 1044: 谭浩强C语言(第三版)习题5.8 C++
- 《C语言及程序设计》程序阅读——用switch语句实现多分支结构
- 《C语言及程序设计》实践参考——个人所得税计算器if语句版
- 习题5.5参考答案,求分段函数的值
- 《机器学习》(周志华)课后习题参考答案
- 存储器系统课后习题参考答案
- c语言中的switch语句的个人理解
- C语言switch case语句中定义变量问题
- c语言中用数组代替switch语句投掷骰子