c语言支付方法: 取1元、 2元和5元纸币共10张, 凑整18元, 共有几种方法? (用 n表示)

2025-02-24 17:20:03
推荐回答(1个)
回答1:

include
int main()
{ int a,b,n=0;
printf("5元\t2元\t1元\n");
for(a=0; a<4; a++)
for(b=0;b<(18-5*a)/2;b++)
if(a+b+(18-5*a-2*b)==10)
{n++;
printf("%d\t%d\t%d\n",a,b,18-5*a-2*b);
}
printf("共有 %d 种方案\n",n);
return 0;}
用穷举的方法使用二重循环就可以了。具体的代码已经贴出来了。程序编译通过,运行截图如下。