6、编程题:编写程序输入三角形的3条边长,计算并输出三角形的面积。

 我来答
dongyue2008
2011-04-25 · TA获得超过3602个赞
知道大有可为答主
回答量:1300
采纳率:100%
帮助的人:581万
展开全部
#include<stdio.h>
#include<math.h>
void main ()
{
float a,b,c,d;
float s;
double area;
scanf("%f%f%f",&a,&b,&c);
if (a+b>c&&b+c>a&&a+c>b)//&&代表逻辑和
{
s=(a+b+c)/2;
d=s*(s-a)*(s-b)*(s-c);
area=sqrt(d);
printf("三角形面积=%d\n",area);
}
else
{
printf("无法构成三角形\n");
}
}
追问
这个程序有问题不对
追答
改正如下:
#include
#include
void main ()
{
float a,b,c,d;
float s;
double area;
scanf("%f%f%f",&a,&b,&c);
if (a+b>c&&b+c>a&&a+c>b)//&&代表逻辑和
{
s=(a+b+c)/2;
d=s*(s-a)*(s-b)*(s-c);
area=sqrt(d);
printf("三角形面积=%lf\n",area);
}
else
{
printf("无法构成三角形\n");
}
}
百度网友59af0a4
2011-04-25 · TA获得超过236个赞
知道小有建树答主
回答量:211
采纳率:0%
帮助的人:197万
展开全部
#include <stdio.h>
#include <math.h>
int main()
{
int n,a[100][3],i,j;
double s,p;
scanf("%d",&n);
for(i=0;i<n;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
for(i=0;i<n;i++)
{

if(a[i][1]+a[i][0]<=a[i][2]||a[i][1]+a[i][2]<=a[i][0]||a[i][0]+a[i][2]<=a[i][1])
printf("-1\n");
else
{ p=a[i][0]+a[i][1]+a[i][2];
p=p/2;
s=p*(p-a[i][0])*(p-a[i][1])*(p-a[i][2]);
s=sqrt(s);
printf("%.4f\n",s);
}
}
return 0;
}
ACM系统通过的。。。绝对AC~!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式