开发者社区 问答 正文

关于三角形的判定问题 谢谢各位

题目如下
给定三条边,请你判断一下能不能组成一个三角形。
Input
输入数据第一行包含一个数M,接下有M行,每行一个实例,包含三个正数A,B,C。其中A,B,C <1000;
Output
对于每个测试实例,如果三条边长A,B,C能组成三角形的话,输出YES,否则NO。
Sample Input
2
1 2 3
2 2 2
Sample Output
NO
YES
代码如下

#include
#include
int main()
{
int n,i,p;
double a[100][100];
double d,b,c;
while(scanf("%d",&n)!=EOF)
{
for(i=0;i {
for(p=0;p {
scanf("%lf",&a[i][p]);
}
d=a[i][0];b=a[i][1];c=a[i][2];
if(d+b>c && fabs(d-b) {
printf("YES\n");
}
else
{
printf("NO\n");
}
}
}
return 0;
}
这是我用数组做的当我不用数组的时候像这样
#include
#include
int main()
{
int n,i;
double a,b,c;
while(scanf("%d",&n)!=EOF)
{
for(i=0;i {
scanf("%lf%lf%lf",&a,&b,&c);
if(a+b>c && fabs(a-b)<c)
printf("YES\n");
else
printf("NO\n");
}
}
return 0;
}

就对了
第一个代码提示Runtime Error(ACCESS_VIOLATION)
找不出原因 求指教谢谢了

展开
收起
a123456678 2016-03-24 11:21:10 1890 分享 版权
1 条回答
写回答
取消 提交回答
  • 第一个程序输入不对,应该这么写
    scanf("%d",&n)
    for (int i = 0; i < n; i++)
    {
    //每组数据的判断
    scanf("%d %d %d", &a, &b, &c);
    ...
    }

    2019-07-17 19:12:24
    赞同 展开评论
问答分类:
问答地址: