c语言 找零钱怎么做

我们知道人民币有1、2、5、10、20、50、100这几种面值。

现在给你n(1≤n≤250)元,让你计算换成用上面这些面额表示且总数不超过100张,共有几种。
比如4元,能用4张1元、2张1元和1张2元、2张2元,三种表示方法。

输入

输入有多组,每组一行,为一个整合n。 输入以0结束。

输出

输出该面额有几种表示方法。

示例输入
1
4
0

示例输出
1
3

我才学c
有笨法子,但是想法很简单
那就是遍历
1的遍历从0~250
2的从0到125遍历
5的从0到50遍历
10从0到25遍历
50从0到5遍历
100从0到2遍历
循环最里面判断i1*1+i2*2+i5*5+i10*10+i20*20+i50*50+i100*100和你的输入比较
如果相等输出非零相应数
其他的输入控制写好
输出格式排版什么的写好,其实也挺 简单美观的
计算机就擅长做重复的事,让他跑着玩吧
当然我才学c,知不知道有没有对应的经典算法或经典解法
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-06-04
做起来太烦,主要用“%”,其他的自己想想

c语言找零钱问题,谢谢
1. 首先,用户输入总金额,例如“238元”。2. 接着,程序从最大面值的人民币开始减去,这里是“100元”。3. 用238元减去100元,得到138元。由于结果是正数且不为零,记录100元张数的变量加1。4. 然后,继续用138元减去100元,得到38元。同样地,结果是正数且不为零,记录100元张数的变量再加...

c语言 找零钱问题,谢谢
先输入n值,然后从最大面值的人民币开始减。例如:我有238元 减最大面值的第一个。238-100=138。结果为正数且不为零。然后记录100元张数的变量加1(这些变量都应初始化时为0)继续,138-100=38.结果正数且不为零,同上100面值变量加1,38-100。结果小于零。不再用100面值的减。38-50。...

用C语言编写找零钱问题,谢谢!!
\/\/用递归, C++下调试 include <iostream> using namespace std;void compute_coins(int coin_value,int& number,int& amount_left){ if(amount_left >= coin_value)compute_coins(coin_value, ++number, amount_left -= coin_value);else{ cout << coin_value << ":" << number << endl...

C语言 计算最少找零钱币数
1 类型用double 不要用float 2 输入是字符串 然后自己解析 比如输入0.51 那么解出来就是51 谢谢采纳

C语言实现出纳员找零钱问题
代码的话你自己想~~ 这个可以作业的 我在给你一个建议 就是 要智能选择要找的钱 比如你每个面额有10张 要找15块 应该要找1张10 和1张5 不应该找3张5 要不然5块的消耗很大 另外如果找50 你的20块找有2张 10 块有10张 这种情况 合理的找法应该是5张10 而不是2张20 +...

c语言 找零钱怎么做
100从0到2遍历 循环最里面判断i1*1+i2*2+i5*5+i10*10+i20*20+i50*50+i100*100和你的输入比较 如果相等输出非零相应数 其他的输入控制写好 输出格式排版什么的写好,其实也挺 简单美观的 计算机就擅长做重复的事,让他跑着玩吧 当然我才学c,知不知道有没有对应的经典算法或经典解法 ...

C语言中什么叫死循环?怎么避免?
死循环就是不停的执行for循环,while循环。避免死循环要看下死循环是如何产生的,例如在C语言程序中,语句“while(1)printf("*");”就是一个死循环,运行它将无休止地打印*号。产生死循环的情况有:▪ 逻辑错误 ▪ 变量处理错误 ▪ 奥尔德森循环 ▪ 无穷递归 你可以看下...

相似回答