题目描述
某人借书超过时限,按规定,超过时限将被罚款:
第一天的罚款金额是书价的2%,后一天的罚款金额是前一天的1.5倍。 当罚款总额超过10元,将禁止借书。
输入借书总金额,请编程计算该人第几天将被禁止借书。
输入格式: 输入所借书的总金额,金额为浮点数
输出格式: n,n为罚款总额刚超过10元的天数
输入样例: 200.5
输出样例: 2
源代码
#include <stdio.h>
int main() {
float price, fine = 0;
int day = 1;
printf("请输入所借书的总金额:\n");
scanf("%f", &price);
while (fine <= 10) {
if (day == 1) {
fine += price * 0.02;
} else {
fine += fine * 1.5;
}
if (fine > 10) {
break;
}
day++;
}
printf("罚款总额超过10元的天数为:%d\n", day);
return 0;
}
我们首先定义了一个变量price
表示所借书的总金额,一个变量fine
表示已累计的罚款总额,以及一个变量day
表示当前是第几天。
接下来,我们使用一个循环计算罚款总额,直到罚款总额超过10元。如果罚款总额超过10元,立即跳出循环,而不再继续执行。
这样,当罚款总额第一次超过10元时,退出循环,并输出当前的天数。
运行截图
© 版权声明
本站资源来自互联网收集,仅供用于学习和交流,请勿用于商业用途。如有侵权、不妥之处,请联系站长并出示版权证明以便删除。敬请谅解!
THE END