爱敲代码的小杨.

爱敲代码的小杨.

【C语言必刷题】7. 百钱百鸡-LMLPHP

📚博客主页:爱敲代码的小杨.

✨专栏:《Java SE语法》 | 《数据结构与算法》 | 《C生万物》 |《MySQL探索之旅》 |《Web世界探险家》

❤️感谢大家点赞👍🏻收藏⭐评论✍🏻,您的三连就是我持续更新的动力❤️

🙏小杨水平有限,欢迎各位大佬指点,相互学习进步!

【C语言必刷题】7. 百钱百鸡-LMLPHP

1. 题目描述

百鸡百钱是我国古代数学家张丘建在《算经》一书中提出的数学问题:“鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?”
意思就是: 一百块钱, 买一百只鸡, 公鸡,母鸡,小鸡各买多少只?

2. 解题思路

  1. 定义变量i,j,n表示公鸡, 母鸡, 小鸡的只数
  2. 穷举公鸡,母鸡小鸡的数量
    1. 公鸡: 五元一只,最多买20只
    2. 母鸡: 三元一只,最多买33只
    3. 小鸡: 一元三只,最多买99只
  3. 判断数量是否等于100, 并且总金额也等于100, 如果两个条件同时成立则打印公鸡, 母鸡, 小鸡的数量

3. 代码:

#include<stdio.h>

int main()
{
	int i = 0; // 表示公鸡的个数
	int j = 0; // 表示母鸡的个数
	int n = 0; // 表示小鸡的个数

	// 公鸡最多能买20只
	for (i = 1; i <= 20; i++)
	{
		// 母鸡最多能买33只
		for (j = 1; j <= 33; j++)
		{
			// 小鸡的数量是3的倍数,且小于等于99只
			for (n = 3; n <= 99; n += 3)
			{
				// 满足总金额等于100,并且总鸡数等于100的条件
				if ((i * 5 + j * 3 + n / 3 == 100) && (i + j + n == 100))
				{
					printf("公鸡:%d只 母鸡:%d只 小鸡:%d\n", i, j, n);
				}
			}
		}
	}

	return 0;
}

运行结果:
【C语言必刷题】7. 百钱百鸡-LMLPHP

【C语言必刷题】7. 百钱百鸡-LMLPHP

04-27 03:25