循环结构简单题之分硬币
生活随笔
收集整理的這篇文章主要介紹了
循环结构简单题之分硬币
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
題目
現(xiàn)有1分,2分,5分的硬幣一共60枚,請輸出可以讓所有硬幣之和為1元的分法。(每種分法都必須含有所有面值的硬幣)
PS:三重循環(huán)的枚舉太過繁瑣而且比較簡單就不整理了
1.兩重循環(huán)
題解:
#include<stdio.h> int main(void) {int i,j,k;//一分、二分、五分 for(i=1;i<60;i++){for(j=1;j<50;j++){k=60-i-j;if((i+2*j+5*k)==100)printf("%d %d %d\n",i,j,k);}}return 0;}2. 利用方程組消元一層循環(huán)解決問題
思路:對問題進行分析,設(shè)一分、兩分、五分的硬幣個數(shù)分別為i、j、k,列出方程組
{
i+j+k=60
i+2j+5k=100
}
化簡求出關(guān)系:
j=40-k*4(k<=10)
代碼如下:
#include <stdio.h> int main(void) {int i = 0;int one, two, five;for (five = 0; five <= 10; five++){two = 40 - 4 * five;one = 60 - two - five;if (one + two * 2 + five * 5 == 100){i++;printf ("兌換方案%2d:1分硬幣%2d枚,2分硬幣%2d枚,5分硬幣%2d枚\n", i, one, two, five);}}printf ("共有%d種兌換方案\n", i); return 0; }總結(jié)
以上是生活随笔為你收集整理的循环结构简单题之分硬币的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SEO优化基础知识大全 SEO新手入门必
- 下一篇: 智慧零售erp通用版管理系统+门店管理+