7-23 百钱买百鸡问题 (10 分)

398 阅读1分钟

公鸡每只5元,母鸡每只3元,小鸡1元3只,而且鸡必须整只买。100元钱买100只鸡(每一种鸡都要有),公鸡、母鸡、小鸡各多少只?请编写程序给出各种购买方案。

输入格式:

输入为一个正整数n,表示要求输出前n种可能的方案。方案的顺序,是按照公鸡只数从少到多排列的。

输出格式:

显示前n种方案中公鸡、母鸡、小鸡各多少只。每行显示一种方案,数字之间空一格,最后一个数字后没有空格。

注意:如果全部方案不到n种,就顺序输出全部可能的方案。

解题思路:因为小鸡一元买三只,所以小鸡的个数一定是3的倍数,并且每种鸡都要有那么我们就让小鸡从3只开始加起,因为至多三种方案,所以用户输入3以上的数的时候我们让他变成3

#include<stdio.h>
int main()
{
	int n = 0;
	scanf("%d", &n);
	if (n > 3)
	{
		n = 3;
	}
	for (int i = 1; i < 100,n>0; i++)
		{
			for (int k = 1; k < 100; k++)
			{
				for (int j = 3; j < 100; j += 3)
				{	

					if (i + k + j == 100 && 5 * i + k * 3 + j / 3 == 100)
					{
						printf("%d %d %d\n", i, k, j);
						n--;
					}

				}

			}
		

	}

	return 0;
}