要求用户输入金额,显示如何用最少张数的50,20,10,5,1元钞票来付款
时间: 2024-10-08 10:01:44 浏览: 41
在C语言中,你可以使用循环和条件判断来实现这个功能。以下是一个简单的程序示例,它会询问用户的输入金额,然后输出用最少张数的50、20、10、5、1元钞票组合:
```c
#include <stdio.h>
int main() {
int amount, fifty = 0, twenty = 0, ten = 0, five = 0, one = 0;
// 输入金额
printf("Enter the amount to be paid: ");
scanf("%d", &amount);
while (amount > 0) {
// 尝试先用50元钞票
if (amount >= 50) {
amount -= 50;
fifty++;
} else {
// 否则用次大的20元或10元
if (amount >= 20) {
amount -= 20;
twenty++;
} else if (amount >= 10) {
amount -= 10;
ten++;
} else {
// 最后用5元、1元依次尝试
if (amount >= 5) {
amount -= 5;
five++;
}
if (amount >= 1) {
amount -= 1;
one++;
}
}
}
}
printf("Payment can be made with:\n");
printf("50 Rupee notes: %d\n", fifty);
printf("20 Rupee notes: %d\n", twenty);
printf("10 Rupee notes: %d\n", ten);
printf("5 Rupee notes: %d\n", five);
printf("1 Rupee coins: %d\n", one);
return 0;
}
```
当你运行这个程序时,它会提示用户输入金额,然后根据输入金额计算并打印出最少数量的各个面额钞票和硬币。
阅读全文