编程序,人民币钱数问题。题目详见下面。

来源:百度知道 编辑:UC知道 时间:2024/05/27 19:52:53
编程序,输入正整数m,它代表一个人民币钱数(元数)。要求使用最少张数的人民币凑成上述的钱数m,输出求取结果。注意:现在共有7种元以上面值的人民币纸币,分别为:100、50、20、10、5、2、1。
要用C或C++编。

main()
{
int bai;
int wusi;
int ersi;
int si;
int wu;
int er;
int yi;

int number;
int total;
scanf("%d",number);

for(bai=1;bai<100;bai++){ /*假设用循环100足够的话
for(wusi=1;wusi<100;wusi++){
for(ersi=1;ersi<100;ersi++){
for(si=1;si<100;si++){
for(wu=1;wu<100;wu++){
for(er=1;er<100;er++){
for(yi=1;yi<100;yi++){

total=(bai*100)+(wusi*50)+(ersi*20)+(si*10)+(wu*10)+(er*2)+yi;

if(number==total){
printf("%d,%d,%d,%d,%d,%d,%d,bai,wusi,ersi,si,wu,er,yi);
exit();
}

}
}
}
}
}
}

}

如果出现有语法错语或大括号不匹对,请自己修改,这个程序,你应该能看懂思路了