输入两个整数代表鸡和兔的总只数与总脚数,编写程序,输出鸡和兔各多少只(输入和输出时,按先鸡后免的顺序,中间以空格分隔)。用C语言写程序
时间: 2024-10-23 12:15:53 浏览: 26
Python代码解决经典的鸡兔同笼问题示例
在C语言中,我们可以使用循环和条件判断来解决这个问题。这是一个经典的“鸡兔同笼”问题,也称为“中国剩余定理”的简单版本。以下是相应的C语言代码:
```c
#include <stdio.h>
int main() {
int chickens, rabbits, total_chickens_feet, total_legs;
// 输入鸡和兔的总数以及它们的总脚数
printf("请输入鸡的数量(先输入)和兔的数量,以及总脚数(每只鸡2脚,兔子4脚):");
scanf("%d %d %d", &chickens, &rabbits, &total_chickens_feet);
// 总脚数 = 鸡的脚数 + 兔的脚数
total_legs = chickens * 2 + rabbits * 4;
if (total_legs == total_chickens_feet) { // 检查是否所有脚都匹配
// 根据脚的数量计算鸡和兔的数量,可能有多种组合
// 这里我们假设鸡的数量为正整数,如果存在负数解决方案,则需要优化算法
for (int i = 0; i <= chickens; i++) {
rabbits = (total_chickens_feet - 2 * i) / 2;
// 如果兔子的数量也是正整数,则找到了解
if (rabbits >= 0 && rabbits * 4 == total_chickens_feet - 2 * i) {
printf("鸡有%d只,兔有%d只。\n", i, rabbits);
break;
}
}
} else {
printf("无法确定鸡和兔的具体数量,因为脚数不匹配。\n");
}
return 0;
}
```
当你运行这个程序时,它会提示用户输入鸡和兔的数量及它们脚的总数,然后尝试找出满足条件的鸡兔组合。
阅读全文