根据提示,在右侧编辑器 Begin-End 区域补充代码,实现整钱兑零功能。具体要求如下: 变量money是一个int类型的数,个位十位代表小数点后的部分,例如1156代表 11.56 美元。 输出兑换零钱的结果,样式详见测试说明的测试输出
时间: 2024-09-25 18:20:42 浏览: 64
Delphi案例分析:实现一个简单的文本编辑器
为了实现整钱兑零的功能,我们可以创建一个函数,它接受一个int类型的`money`作为输入,并返回一个字符串表示的零钱兑换结果。考虑到中国的硬币面值有1分、2分、5分、1角、5角和1元,我们需要将货币转换成这些单位的数量。以下是代码实现:
```java
public class CoinChange {
private static final int[] COIN_VALUES = {1, 2, 5, 10, 50, 100}; // 面值数组
private static final String[] COIN_NAMES = {"分", "角", "元"};
public static String changeMoney(int money) {
StringBuilder result = new StringBuilder();
for (int i = COIN_VALUES.length - 1; i >= 0 && money > 0; i--) {
while (money >= COIN_VALUES[i]) {
result.append(COIN_NAMES[i]).append(" ");
money -= COIN_VALUES[i];
}
}
return result.toString().trim(); // 移除末尾多余的空格并返回结果
}
public static void main(String[] args) {
int money = 1156; // 示例金额
String change = changeMoney(money);
System.out.println("兑换零钱结果:" + change); // 测试输出
}
}
```
在这个代码里,我们遍历硬币面值数组从大到小,如果当前面值小于等于剩余的钱,就添加相应的名称并减去这个面值,直到不足以再支付为止。
阅读全文