| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 553 人关注过本帖
标题:本人写了一段程序求是否是三角形的程序,但。。。
只看楼主 加入收藏
小白猿
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2014-10-20
结帖率:0
收藏
已结贴  问题点数:20 回复次数:3 
本人写了一段程序求是否是三角形的程序,但。。。
如题,但是在pat上提交后总是有一个例子通不过,百思不得姐,求大神指点
到底哪里出错了
#include<stdio.h>
#include<math.h>
int main(void)
{
      float x1,y1,x2,y2,x3,y3;
      float  a,b,c;
      scanf("%f%f%f%f%f%f",&x1,&y1,&x2,&y2,&x3,&y3);//输入的是直角坐标系中点的坐标(x1,y1)(x2,y2)(x3,y3)
      a=sqrt(pow(x2-x1,2)+pow(y2-y1,2));
      b=sqrt(pow(x3-x1,2)+pow(y3-y1,2));
      c=sqrt(pow(x3-x2,2)+pow(y3-y2,2));

      float l,s;
      if((a+b>c)&&(a+c>b)&&(b+c>a)){
        l=(a+b+c)/2.0;
        s=sqrt(l*(l-a)*(l-b)*(l-c));
        printf("L = %.2f, A = %.2f",l*2,s);
      }
         else printf("Impossible");
          /*  if((a+b<c)||(a+c<b)||(b+c<a))  printf("Impossible");


         else{
             l=(a+b+c)/2.0;
        s=sqrt(l*(l-a)*(l-b)*(l-c));
        printf("L = %.2f, A = %.2f",l*2,s);
         }*/


    return 0;
}
搜索更多相关主题的帖子: include 三角形 
2014-10-29 21:59
诸葛欧阳
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:流年
等 级:贵宾
威 望:82
帖 子:2790
专家分:14619
注 册:2014-10-16
收藏
得分:10 
输出l*2.0

一片落叶掉进了回忆的流年。
2014-10-29 23:12
小白猿
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2014-10-20
收藏
得分:0 
回复 楼主 小白猿
还是不行
2014-10-31 15:59
fdjiangwu
Rank: 2
来 自:江西
等 级:论坛游民
帖 子:6
专家分:33
注 册:2012-10-21
收藏
得分:10 
你这个当然不行,C语言变量声明是要放在语句前面的。
float l,s;这一行要放到scanf()前面去。
另外还有一点,sqrt()函数的返回值类型是double,而a,b,c是float型的,精确度会丢失的。
2014-10-31 16:11
快速回复:本人写了一段程序求是否是三角形的程序,但。。。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017489 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved