用C语言编写鸡兔同笼问题

鸡兔同笼总头数n,总腿数m。M和N都是由键盘输入的数据,求出鸡和兔各几只,如果无解,则输出Noanswer... 鸡兔同笼
总头数n,总腿数m。M和N都是由键盘输入的数据,求出鸡和兔各几只,如果无解,则输出No answer
展开
 我来答
hachi1030
推荐于2018-02-27 · TA获得超过121个赞
知道小有建树答主
回答量:132
采纳率:100%
帮助的人:121万
展开全部
#include <stdio.h>
void main( )
{
int ret = 0; // 表示最后一个printf的返回值
while(1)
{
int h,f,c,r;
printf("请输入头的数目:");
scanf("%d",&h);
printf("\n请输入脚的数目(必须为偶数):");
scanf("%d",&f);
while(f%2!=0 && f != 0 && h != 0) //这里的不等于的条件可以不加
{
printf("\n输入脚的数目为奇数,请重新输入脚的数目(必须偶数):");
scanf("%d",&f);
if( f > 4h || f < 2h)
continue;
}

for(c=0;c<=h;c++)
for(r=1;r<=h;r++) //这句改成:for(r=0; r <= h-c; r++)好点,减少的循环的次数,加了效率
{
if(c+r==h&&2*c+4*r==f)
ret = printf("\n鸡的数目为%d,兔子的数目为%d\n\n",c,r);
}
if( ret == 39) /*作用是输入一次成功后,结束大循环, 可以不要*/
break;
}
}
育知同创教育
2016-01-26 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
展开全部
#include<stdio.h>
#define MAX 10
int main()
{
int i,n,a[MAX];
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
for(i=0;i<n;i++)
{
if(a[i]%2)
printf("0 0");
else
printf("%d %d",(a[i]%4)/2+a[i]%4,a[i]%2);
}
return 0;
}
主要明白鸡只有两只脚,兔有四只脚。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2018-02-27
展开全部
int m = 0, n = 0;
int a, b;
printf("总头数");
scanf("%d",&n);
printf("总腿数");
scanf("%d",&m);
b = (m - 2n )/2
a = n - b;
if( a + b == n && 2 * a + 4 * b = m && a >= 0 && b >= 0)
    printf("鸡和兔各%d, %d只", a, b);
else 
    printf("No answer");
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式