13:人民币支付

预计阅读时间:5分钟

题目

描述

从键盘输入一指定金额(以元为单位,如345),然后输出支付该金额的各种面额的人民币数量,显示100元,50元,20元,10元,5元,1元各多少张,要求尽量使用大面额的钞票。

输入

一个小于1000的正整数。

输出

输出分行,每行显示一个整数,从上到下分别表示100元,50元,20元,10元,5元,1元人民币的张数

样例输入

735

样例输出

7
0
1
1
1
0

题目分析

简单易懂,没什么好分析的。

思路

本人用了两个办法,一个是用减法来做,效率不是很高,但也对了;另一个是用取模来做,这个效率高很多,是个不错的办法。当然两个都对。

参考代码

两个办法都对。

方法一:笨办法

#include <iostream>
using namespace std;
int main()
{
	int n;
	int c100=0,c50=0,c20=0,c10=0,c5=0,c1=0;
	cin>>n;
	while(n>=100)
	{
		n-=100;
		c100++;
	}
	while(n>=50)
	{
		n-=50;
		c50++;
	}
	while(n&g
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值