前言:
作者本人在今年4月份参加了一个C语言考试,编程大题里有一道鸡兔同笼问题;本来以为简简单单,几分钟搞定,拿个满分;结果翻车了,因为我在考场的时候想着,母鸡到底有几只脚呢,2 还是3,我居然忘了,内心是无比崩溃的;最后定了个母鸡有三只脚,三角形具有稳定性嘛,母鸡不会摔跤,然后完成了考试。出了考场,随便选了家面馆,一边吃剔尖,一边查母鸡有几个脚。为什么是2只呢,哎,扣分了,剔尖顿时也不香了。今天写个C语言求鸡兔同笼问题的案例讲解来鞭策自己不能犯这种生活常识的错误,母鸡有2只脚,大家不要像我一样犯这种错误。
鸡兔同笼例题:
思路分析:
1)题意中的上有三十五头可以得出:鸡和兔一共有35只。
2)根据生活常识得出:鸡有2只脚,兔有4只脚;题意中的下有九十四只可以得出鸡和兔一共有94只脚。
3)设兔的个数为a,鸡的个数为b并根据上面的条件联立一个方程组并用C语言代码的形式表示出来即可。
案例代码如下:
#include <stdio.h>
void main(){
int a=0,b=0;//a为兔,b为鸡,先初始化个数为0
for(a=1;a<=35;a++){//因为不确定兔和鸡各有多少只,所以假设最大数都为35
for(b=1;b<=35;b++){
if((a+b==35)&&(4*a+2*b==94)){//鸡加兔一共有35只,脚的个数一共有94只
printf("兔有%d只\n",a);
printf("鸡有%d只\n",b);
}
}
}
}
代码运行结果如下:
后记:
事情的前因后果都讲清楚了,代码运行也正确。按理说也到了文章结束的时候了,可我还是想多说点什么,我想宣传一个家乡山西的剔尖!剔尖是用铁筷子剔出的面,加上各种浇头老好吃了,面有嚼劲,百吃不厌,欢迎大家来山西品尝!