将100元人民币兑换成10元,5元,1元的纸币(至少各一张),请问:共有几种换法?每种换法各几张?
分析:10元最多9张,5元最多17张,1元最多85张,因为循环次数确定,所以用for循环。
源程序:
#include<stdio.h>
int main(void)
{
int a,b,c,count=0;
printf("每种换法10元,5元,1元各:\n");
for(a=1;a<=9;a++)
{
for(b=1;b<=17;b++)
{
for(c=1;c<=85;c++)
{
if(a*10+b*5+c==100)
{
count++;
printf("%d,%d,%d\n",a,b,c);
if(count%5==0) printf("\n");
}
}
}
}
printf("共有%d换法\n",count);
return 0;
}
部分结果截屏如下: