#include
int main()
{
int i10,i5,i1,N,s;
printf("Input N:");
scanf("%d",&N);
s=0;
for(i10=1;i10<=N/10;++i10){
for(i5=1;i5<=N/5;++i5){
for(i1=1;i1<=N-2;++i1){
if(N==10*i10+5*i5+i1){
++s;
printf("方案%d:10元:%d张 5元:%d张 1元:%d张\n",s,i10,i5,i1);
}
}
}
}
printf("共有%d种方案。\n",s);
return 0;
}
因为N元不是一个确定的数,所以换成零钱的方案数也是一个不确定的数。
例如N为小于5的整数,那只能有一种,就是N张1元;若N大于5小于10,则有两种,若N大于10小于15,则有4种;所以调换方案数因N不能确定而不能确定。
是因为屏幕显示不下了.#includevoidmain(){intc5,c2,c1;freopen("C:\\a.txt","w",stdout);//输出到C盘的a.txt下可以看到全部for(c5=1;c5<20;c5++)for(c2=1;c2<50;c2++)for(c1=1;c1<100;c1++)if(c5*5+c2*2+c1==100)printf("%d%d%d\n",c5,c2,c1);}