C语言的高手请进,用c语言编写

来源:百度知道 编辑:UC知道 时间:2024/09/24 08:33:06
我这有两道题,请高手帮我解答一下,用c语言编写
1.编程求解鸡兔同笼问题:已知鸡兔共有头a只,脚b只,计算鸡兔各有多少只?请思考,鸡兔脚的总数b可以任意输入吗?
2.编程从键盘输入一个三角形的三条边长a,b,c.请计算三角形的面积。
面积的计算公式为:area=sqrt[(s-a)(s-b)(s-c)],其中S=0.5(a+b+c).请思考,三角形的三条边长可以任意输入么?

1、
#include<stdio.h>
void main()
{
int heads,legs,i;
loop: printf("ipute heads:\n");
scanf("%d",&heads);
printf("input legs:\n");
scanf("%d",&legs);
for(i=0;i<=heads;i++)
if(legs==4*(heads-i)+2*i)
break;
if(i>heads)
{
printf("Invalid inpute!\n");
goto loop;
}
printf("chicken=%d,rabbit=%d",i,heads-i);

}

2、
#include<stdio.h>
#include<math.h>
void main()
{
float a,b,c,S,area;
loop: printf("Please input the length:\n");
scanf("%f %f %f",&a,&b,&c);
if(a+b<=c||b+c<=a||a+c<=b)
{
printf("Invalid input!\n");
goto loop;
}
S=(a+b+c)/2;
area=sqrt((S-a)*(S-b)*(S-c));
printf("area=%f",area);
}
都考虑了输入的合法性,如果输