C语言人民币兑换问题

//用100元人民币兑换10元、5元和1元的纸币(每一种都要有),输入要兑换的纸币的总数n(101>n>9),
//编程输出每种兑换方案中10元、5元和1元的张数,最后输出共有多少种兑换方案。
//输入提示:"请输入一共兑换多少张纸币:"
//输入格式:"%d"
//输出格式:"10元%d张,5元%d张,1元%d张\n"
//"总共有%d种方案\n"

请说出你的初始想法吧

可以使用三重循环来枚举,代码如下:

#include<stdio.h>
int main()

{
    int i,j,k;
    int count=0;
/*全部兑换成1元的人民币一共能换100张*/
    for(i=1;i<100;i++)
   {

/*全部兑换成5元的人民币一共能换20张*/
    for(j=1;j<20;j++)
    {
/*全部兑换成10元的人民币一共能换10张*/
        for(k=1;k<10;k++)
        {
            if((i+j*5+k*10)==100)
            {
                printf("10元:%d,5元:%d,1元:%d\n",k,j,i);

                count++;
            }

        }

     }

}

printf("共有%d种方案\n",count);
return 0;
}