为什么运行出来的结果很奇怪,比如输入30 60,出来的却是鸡有8168,兔子有-4072,这肯定不对啊!
#include <stdio.h>
int main()
{
int head,feet;
scanf("请分别输入头和脚的数量%d %d",&head,&feet);
float rabbit=(feet-2*head)/2.0;
float chicken=head-rabbit;
if ((int) chicken!=chicken&&(int)rabbit!=rabbit){
printf("傻逼,题错了!");
}else{
printf("鸡有%f只,兔有%f只",chicken,rabbit);
}
return 0;
}
#include <stdio.h>
void main()
{ int a,b,c,d;
printf("这是一个用于算鸡兔同笼的小程序\n请输入鸡兔的总数");
scanf("%d",&a);
if(a>=0)
{
printf("\n请输入鸡兔脚的总数");
scanf("%d",&b);
if(b%2==1)
printf("脚的数量出现奇数,真奇怪啊!\n");
else if(b<=a*4&&b>=a*2)
{
c=(4*a-b)/2; // 鸡的数目
d=a-c; // 兔的数目
if(c*2+d*4==b)
printf("鸡有%ld只\n兔有%ld只\n",c,d); // c和d反了
else
printf("这个真难,计算机也没法算!\n");
}
else
printf("输入鸡兔脚的数量范围不正确,正确的范围是%d--%d!\n",a*2,a*4);
}
else
printf("数量不能为负!\n");
}