解题思路: 思路较为简单,读者简单阅读即可理解
注意事项: 注意递归的结束条件
参考代码:
#include <stdio.h> #define N 100000 double getBonus(double i){ if(i <= N){ return i*0.1; }else if(i <= 2*N){ return (i - N)*0.075 + getBonus(N); }else if(i <= 4*N){ return (i - 2*N)*0.05 + getBonus(2*N); }else if(i <= 6*N){ return (i - 4*N)*0.03 + getBonus(4*N); }else if(i <= 10*N){ return (i - 6*N)*0.015 + getBonus(6*N); }else { return (i - 10*N)*0.01 + getBonus(10*N); } } int main() { double I; scanf("%lf", &I); double bonus = getBonus(I); printf("%.0lf", bonus); return 0; }
0.0分
1 人评分
WU-格式化数据输出 (C语言代码)浏览:1818 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:561 |
循环入门练习6 (C语言代码)浏览:1058 |
C二级辅导-阶乘数列 (C语言代码)浏览:583 |
2006年春浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:383 |
C语言程序设计教程(第三版)课后习题9.6 (C语言代码)浏览:611 |
C语言程序设计教程(第三版)课后习题11.5 (C语言代码)浏览:1359 |
C语言程序设计教程(第三版)课后习题6.4 (C语言代码)浏览:696 |
小九九 (C语言代码)浏览:542 |
DNA (Java代码)浏览:971 |