解题思路:
1.首先定义变量coincock(可用来买公鸡的钱),coinhen(可用来买母鸡的钱),coinchi(可用来买小鸡的钱);

2.先买公鸡,买后剩余的钱存在coinhen里;  买完后剩余的钱可以买coinhen/3只母鸡;

3.然后买母鸡,买后剩余的钱存在coinchi里; 买完后剩余的钱可以买coinchi*3只小鸡;

4.最后把coinchi全买小鸡;

5.看买的公鸡+母鸡+小鸡是否等于100,等于则输出解;


注意事项:
不可以就用一个变量存每个过程剩余的钱:

for ( int cock = 0; cock <= 12; cock++ )
    {
        coin    = 100;
        coin        = coin - (5 * cock);
        for ( int hen = 0; hen <= (coin / 3); hen++ )
        {
            coin = coin - (3 * hen);
            if ( (cock + hen + coin * 3 == 100) )
                printf( "cock=%d,hen=%d,chicken=%d\n", cock, hen, coin * 3 );
        }
    }

coin买完母鸡后就变了,再次返回买母鸡时,可买的母鸡数不对的;
参考代码:

#include <stdio.h>

int main()
{
    int coincock, coinhen, coinchi;
    for ( int cock = 0; cock <= 12; cock++ )
    {
        coincock    = 100;
        coinhen        = coincock - (5 * cock);
        for ( int hen = 0; hen <= (coinhen / 3); hen++ )
        {
            coinchi = coinhen - (3 * hen);
            if ( (cock + hen + coinchi * 3 == 100) )
                printf( "cock=%d,hen=%d,chicken=%d\n", cock, hen, coinchi * 3 );
        }
    }
    return(0);
}

别忘点赞哦-.-

点赞(21)
 

0.0分

13 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 3 条评论

无为 3年前 回复TA
这代码写的是真的捞
浅梦 3年前 回复TA
#include <stdio.h>
#include <string.h>
#include <math.h>
int main()
{
   int i,j,k,a,b,c;
   for(a=0,i=0;i<25;a+=5,i++)
   {
   	for(b=0,j=0;j<33;b+=3,j++)
   	{
   		for(c=0,k=0;k<300;c++,k+=3)
   		{
   			if(a+b+c==100&&i+j+k==100)
   			{
   				printf("cock=%d,hen=%d,chicken=%d\n",i,j,k);
			   }
		   }
	   }
   }
}
TTSV 4年前 回复TA
#include<stdio.h>
int main()
{
	int cock, hen, n = 0 ,chicken;
	for (cock = 0; cock < 60; cock++)
		for (hen = 0; hen < 99; hen++)
			for (chicken = 0; chicken < 900; chicken++)
				if (15 * cock + 9 * hen + chicken == 300&&cock+hen+chicken==100)
					printf("cock=%d,hen=%d,chicken=%d\n", cock, hen, chicken);
	return 0;
}