100元买100只鸡,母鸡5元一只,公鸡3元一只,小鸡三只一元,c语言如何实现100元买100只鸡
时间: 2024-10-21 19:10:19 浏览: 12
在C语言中,我们可以使用结构体、数组和循环来模拟这个情景。首先,定义一个结构体表示鸡的不同种类:
```c
#include <stdio.h>
// 定义鸡的结构体
typedef struct {
char type; // 'M' for 母鸡,'G' for 公鸡,'S' for 小鸡
int price;
} Chicken;
int main() {
const int totalBudget = 100; // 总预算100元
Chicken chickens[100]; // 鸡群数组,大小为100
int boughtChickens = 0; // 已购买鸡的数量
// 鸡的价格数组
const int chickenPrices[] = {5, 3, 1 / 3}; // 母鸡5元,公鸡3元,3只小鸡1元
while (boughtChickens < 100 && totalBudget > 0) {
for (int i = 0; i < sizeof(chickenPrices) / sizeof(chickenPrices[0]); i++) {
if (totalBudget >= chickenPrices[i]) {
chickens[boughtChickens].type = 'M'; // 母鸡
chickens[boughtChickens++].price = chickenPrices[i];
totalBudget -= chickenPrices[i];
break; // 只需购买一次达到预算即可
} else if (totalBudget >= chickenPrices[i] * 3) { // 公鸡或小鸡
chickens[boughtChickens].type = 'G'; // 公鸡
chickens[boughtChickens++].price = chickenPrices[i];
totalBudget -= chickenPrices[i] * 3;
break;
}
}
}
printf("买了%d只鸡,总花费%d元。\n", boughtChickens, totalBudget); // 输出结果
return 0;
}
```
阅读全文