如何用c语言编写鸡兔同笼的正确答案,已知有40个头 100只脚求鸡多少只兔子多少只 求解求解

如题所述

int main(void)
{
    int nJi;
    int nTu;
    int nHead = 0;
    int nFoot = 0;

    // 已知条件可知道,如果全是鸡的话,要50只才能凑足100只脚
    // 全是兔的话,需要40只才能凑足40个头,
    // 即鸡小于50只,兔小于40只
    for (nJi = 0; nJi < 50; nJi++) {
        for (nTu = 0; nTu < 40; nTu++) {
            nHead = nJi + nTu;
            nFoot = nJi * 2 +  nTu * 4;
            // 所以
            if ((40 == nHead) && (100 == nFoot)) {
                printf("the Ji Cnt = %d, the Tu Cnt = %d.\n", nJi, nTu);
            }
        }
    }

    return 0;
}
/// 输出30
the Ji Cnt = 30, the Tu Cnt = 10.

温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-10-13
int main()
{
int a,b;

for(a=1;a<25;a++)//兔子的数量从1到24
{
b=40-a;//鸡的数量等于40减去兔子的数量
if(4*a+2*b==100)//兔子和鸡的脚总数刚好等于100
printf("兔有%d只,鸡有%d只\n",a,b);//分别打印满足条件的兔子和鸡的数量
}
return 0;
}本回答被网友采纳
第2个回答  2016-10-13
#include<stdio.h>
#define HEAD 40//头,可以随时更改
#define LEG 100//腿
int main ()
{
int chicken,rabbit;

for(chicken=1;chicken<HEAD;chicken++)
{
rabbit=HEAD-chicken;
if(4*rabbit+2*chicken==LEG)
printf("chicken=%d,rabbit=%d\n",chicken,rabbit);
}
return 0;
}
第3个回答  2016-10-13
#include "stdio.h"
int main(void){
    int d=1*4-2*1;
    printf("The chicken is %d\n",-(1*100-4*40)/d);
    printf("The rabbit is %d\n",(1*100-2*40)/d);
    return 0;
}