题目如下
给定三条边,请你判断一下能不能组成一个三角形。
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)
找不出原因 求指教谢谢了
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
第一个程序输入不对,应该这么写
scanf("%d",&n)
for (int i = 0; i < n; i++)
{
//每组数据的判断
scanf("%d %d %d", &a, &b, &c);
...
}