搜索
查看: 762|回复: 8
打印 上一主题 下一主题

为什么不行啊 求大神

[复制链接]
跳转到指定楼层
楼主
发表于 2014-4-27 18:31:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
5啊哈币
#include<stdio.h>
#include<stdlib.h>
int main()
{
        double a,b,c,s,area;
        scanf("%lf%lf%lf",&a,&b,&c);
        s=(a+b+c)*0.5;
        area=sqrt(s*(s-a)*(s-b)*(s-c));
        printf("area=%7.2f\n",area);
}
输出的是1#。。。

最佳答案

沙发
发表于 2014-4-27 18:32:00 | 只看该作者
qw375007324 发表于 2014-4-27 18:55
3 4 5 还是不行的。。。

你在用VC6?
板凳
发表于 2014-4-27 18:42:48 | 只看该作者
估计你输入的三边不能构成三角形,用海伦公式就是对一个负数求算数平方根
地板
 楼主| 发表于 2014-4-27 18:55:21 | 只看该作者
rosynirvana 发表于 2014-4-27 18:42
估计你输入的三边不能构成三角形,用海伦公式就是对一个负数求算数平方根

3 4 5 还是不行的。。。
5#
发表于 2014-4-27 19:32:52 | 只看该作者
可能是有小数点,double换成floute试试
6#
发表于 2014-4-27 19:36:35 | 只看该作者
sqrt平方根计算
是不是要加个math.h数学头文件??
7#
发表于 2014-4-27 19:42:15 | 只看该作者
yangchengjun 发表于 2014-4-27 19:32
可能是有小数点,double换成floute试试

永远不要用float
8#
发表于 2014-4-27 20:04:08 | 只看该作者
yangchengjun 发表于 2014-4-27 19:32
可能是有小数点,double换成floute试试

double是双精度
float    是单精度(用float特别注意,记得加小数点~~)
9#
发表于 2014-4-27 20:04:11 | 只看该作者
yangchengjun 发表于 2014-4-27 19:32
可能是有小数点,double换成floute试试

double是双精度
float    是单精度(用float特别注意,记得加小数点~~)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表