习题4-5 换硬币 (20 分)
生活随笔
收集整理的這篇文章主要介紹了
习题4-5 换硬币 (20 分)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
將一筆零錢換成5分、2分和1分的硬幣,要求每種硬幣至少有一枚,有幾種不同的換法?
輸入格式:
輸入在一行中給出待換的零錢數(shù)額x∈(8,100)。
輸出格式:
要求按5分、2分和1分硬幣的數(shù)量依次從大到小的順序,輸出各種換法。每行輸出一種換法,格式為:“fen5:5分硬幣數(shù)量, fen2:2分硬幣數(shù)量, fen1:1分硬幣數(shù)量, total:硬幣總數(shù)量”。最后一行輸出“count = 換法個數(shù)”。
輸入樣例:
13結(jié)尾無空行
輸出樣例:
fen5:2, fen2:1, fen1:1, total:4 fen5:1, fen2:3, fen1:2, total:6 fen5:1, fen2:2, fen1:4, total:7 fen5:1, fen2:1, fen1:6, total:8 count = 4結(jié)尾無空行
注意:每種硬幣至少一枚?
#include<stdio.h> int main(void) {int money, n1, n2, n5, count;count = 0;scanf("%d", &money);for(n5 = money/5;n5>0;n5 --) //5分錢{for(n2 = (money-n5*5)/2;n2>0;n2 --) //2分錢,money-n5*5是減去一枚5分錢的硬幣{for(n1 = money-n5*5-n2*2;n1>0;n1 --) //1分錢,money-n5*5-n2*2是減去一枚5分跟2分的硬幣{if((n5*5+n2*2+n1) == money){printf("fen5:%d, fen2:%d, fen1:%d, total:%d\n", n5, n2, n1, n5+n2+n1);count ++;}}}}printf("count = %d", count);return 0; }總結(jié)
以上是生活随笔為你收集整理的习题4-5 换硬币 (20 分)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机系统原理实验:模型机(十)ttim
- 下一篇: RAC 之 RMAN 备份