满意答案
锦Vivian
2014.01.07
采纳率:46% 等级:11
已帮助:10011人
楼上的竟然用循环做。。。
#include
#define CHICKEN_FEET 2
#define RABBIT_FEET 4
void f(int heads, int feet, int* chicken, int* rabbit)
{
//假设都是兔子,那么有all_rabbit_feet条腿
int all_rabbit_feet = heads * RABBIT_FEET;
//可实际少了diff条
int diff = all_rabbit_feet - feet;
//因为每把一只鸡当作兔子就会多算2条腿
//所以可以算出鸡的数量
*chicken = diff / (RABBIT_FEET - CHICKEN_FEET);
//剩下的就是兔子的数量了
*rabbit = heads - *chicken;
}
int main()
{
int heads = 8, feet = 22;
int chicken, rabbit;
f(heads, feet, &chicken, &rabbit);
printf("chicken = %d\nrabbit = %d\n", chicken, rabbit);
return 0;
}
00分享举报