用C语言编写鸡兔同笼问题
鸡兔同笼总头数n,总腿数m。M和N都是由键盘输入的数据,求出鸡和兔各几只,如果无解,则输出Noanswer...
鸡兔同笼
总头数n,总腿数m。M和N都是由键盘输入的数据,求出鸡和兔各几只,如果无解,则输出No answer 展开
总头数n,总腿数m。M和N都是由键盘输入的数据,求出鸡和兔各几只,如果无解,则输出No answer 展开
3个回答
展开全部
#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;
}
}
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;
}
主要明白鸡只有两只脚,兔有四只脚。
#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");
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询