1. 程式人生 > >要將五張100元的大鈔票,換成等值的50元,20元,10元,5元一張的小鈔票,每種面值至少1張,程式設計輸出所有可能的換法,程式應適當考慮減少重複次數

要將五張100元的大鈔票,換成等值的50元,20元,10元,5元一張的小鈔票,每種面值至少1張,程式設計輸出所有可能的換法,程式應適當考慮減少重複次數

源程式:

要將五張100元的大鈔票,換成等值的50元,20元,10元,5元一張的小鈔票,要求換成30張小鈔票,每種面值的至少一張,程式設計輸出所有可能的換法,程式應適當考慮減少重複次數。

#include <stdio.h>
#include <stdlib.h>
main()
{
 int x5,x2,x1,x;
for(x5=1;x5<=9;x5++)
{
for(x2=1;x2<=21;x2++)
{
for(x1=1;x1<=42;x1++)
{
for(x=1;x<=84;x++)
{
if((x5*50+x2*20+x1*10+x*5==500)&&(x5+x2+x1+x==30))
printf("%d\t%d\t%d\t%d\n",x5,x2,x1,x);
}

}
}
}
}