前段时间,小x买了个钱包,结果买完就没钱放了,一气之下将钱包搁置箱底,常常忘记带出来。但是没有钱包的话,纸币放在口袋里很不方便,容易乱,也不容易掉,所以每次有买什么东西的时候,他都会让收银员找给他最少张数的纸币。收银员忙于找零,经常没法顾及这个问题,
正如我们所知,纸币面值一般有1元,5元,10元,20元,50元,100元。
Input
输入包含多组数据。
输入第一行包含一个整数N,表示要找的零钱总额。
Output
每次输出一个整数表示答案
SampleInput
75
13
SampleOutput
3
4
供参考:
#include<stdio.h>
int main()
{
int M[6] = { 100,50,20,10,5,1 }, N, b, i;
while (scanf("%d", &N) == 1 && N != 0)//输入金额为0时,结束输入
{
for (i = 0, b = 0; N != 0; i++)//直到余数为零
{
b += N / M[i];//从100元面额开始,先除以100,得到商, 将所有商加起来。
N %= M[i]; //除以100,得到余数。。。
}
printf("%d\n", b);//输出
}
return 0;
}