有人想将手中一张面值100元的人民币换成5元、1元、0.5元面值的零钱100张,以上三种面值的零钱至少有一张,问共有几种换法。请编程实现。要求:
1)每种方案输出占一行,输出顺序是5元、1元、0.5元面值各多少张,各种面额钞票数量之间用一个空格分隔。
2)最后输出有多少种换法。
运行参考示例:
输入1:无
输出1:
1 91 8
2 82 16
3 73 24
……(这里省略输出中间6行,实际完成输出时不省略)
10 10 80
11 1 88
The total is 11
运行代码如下:
#include <stdio.h>
int main()
{
int i,j,k,n=0;
for(i=1;i<20;i++)
{
for(j=1;j<95;j++)
{
for(k=1;k<188;k++)
{
if(5*i+j+0.5*k==100&&i+j+k==100)
{
printf("%d %d %d\n",i,j,k);
n++;
}
}
}
}
printf("The total is %d",n);
return 0;
}