C语言鸡兔同笼问题!!求助!!

一个笼子里面关了鸡和兔子(鸡有2只脚,兔子有4只脚,没有例外)。已经知道了笼子里面鸡和兔子的总数a和脚的总数b,问笼子里面有多少只鸡,有多少只兔子

#include<stdio.h>
void main()
{
int a,b,c,d;
scanf("%d %d",&a,&b);
for(c=1;c<=a;c++)
{
d=a-c;
if(b==2*c+4*d)
printf("%d %d",c,d);
}
}

在我们做作业的网站老也通不过是怎么回事= =本地运行的好好的没有问题

#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");    

}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-10-30
c要从0开始循环,因为你不知道是不是一只鸡也没有。
printf跟的变量都是要取地址的,正确的写法是 printf("%d %d",&c,&d);
你确定主函数返回值是void?你确定程序末尾不用return 0?不符合NOIP规定哦
P.S.- -我不能接受明显的语法错误会好好的没问题……本回答被提问者和网友采纳