1. 程式人生 > >C語言程式例題(四)

C語言程式例題(四)

1.問題描述
公雞5文錢一隻,母雞3文錢一隻,小雞3只一文錢,用100文錢買一百隻雞,其中公雞,母雞,小雞都必須要有,問公雞,母雞,小雞要買多少隻剛好湊足100文錢。
2.問題分析
首先我們可以確定公雞、母雞、小雞的數目肯定為整數,由題目描述可以得出兩個等式:小雞數目+母雞數目+公雞數目=100;公雞價格公雞數目+母雞價格母雞數目+3只小雞價格*小雞數目/3=100。在這裡隱含了2個條件:(1)公雞、母雞、小雞的數目均為整數。(2)小雞的數目為3的倍數
3.程式

#include <stdio.h>

int main()
{
    int cock;
    int hen;
    int
chick; for(cock = 0; cock <= 20; cock++) { for(hen = 0; hen <=33; hen++) { for(chick = 0; chick <= 100; chick++) { if((cock + hen + chick == 100) && (5 * cock + 3 * hen + chick / 3.0 == 100)) { printf("the number of cock ,hen ,chick is:%d
,%d,%d\n"
,cock,hen,chick); } } } } return 0; }

4.執行結果:
這裡寫圖片描述
5.演算法改進
此程式可以只用2個迴圈,最後一個迴圈可以用判斷條件來代替,這樣可以提高執行效率。