用c语言实现下列问题:公鸡每只五元,母鸡每只三元,小鸡一元三只,要求一百元买一百只鸡(某种鸡的数量可以为零),应该买公鸡母鸡小鸡各多少只?编程求出所有符合要求的组合。 运行结果: 0 25 75 4 18 78 8 11 81 12 4
时间: 2023-09-19 14:05:05 浏览: 148
### 回答1:
#include <stdio.h>
int main() {
int x, y, z;
for (x = 0; x <= 20; x++) {
for (y = 0; y <= 33; y++) {
z = 100 - x - y;
if (5 * x + 3 * y + z / 3.0 == 100) {
printf("%d %d %d\n", x, y, z);
}
}
}
return 0;
}
### 回答2:
```c
#include <stdio.h>
int main() {
int cock, hen, chicken;
int count = 0;
for (cock = 0; cock <= 20; cock++) {
for (hen = 0; hen <= 33; hen++) {
chicken = 100 - cock - hen;
if (chicken % 3 == 0 && 5 * cock + 3 * hen + chicken / 3 == 100) {
printf("%d %d %d\n", cock, hen, chicken);
count++;
}
}
}
printf("共有 %d 组符合要求的组合\n", count);
return 0;
}
```
运行结果为:
```
0 25 75
4 18 78
8 11 81
12 4 84
共有 4 组符合要求的组合
```
其中第一个数字代表公鸡的数量,第二个数字代表母鸡的数量,第三个数字代表小鸡的数量。总共有4组符合要求的组合。
### 回答3:
以下是用C语言编写的程序来解决该问题:
```c
#include<stdio.h>
int main() {
int x, y, z;
printf("符合要求的组合为:\n");
for (x = 0; x <= 20; x++) {
for (y = 0; y <= 33; y++) {
z = 100 - x - y;
if (5 * x + 3 * y + z / 3 == 100 && z % 3 == 0) {
printf("%d %d %d\n", x, y, z);
}
}
}
return 0;
}
```
上述程序会输出所有满足条件的组合,其中第一个数字代表公鸡的数量,第二个数字代表母鸡的数量,第三个数字代表小鸡的数量。
运行结果为:0 25 75、4 18 78、8 11 81、12 4 84。
阅读全文