重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
#include stdio.h
我们提供的服务有:成都网站设计、网站制作、微信公众号开发、网站优化、网站认证、宿松ssl等。为上千多家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的宿松网站制作公司
int main()
{
int a,b,c,i,n;
printf("请输三角形个数:");
scanf("%d",n);
printf("\n");
for(i=1;i=n;i++)
{ printf("请输三角形边长:");
scanf("%d",a);
printf("\n");
printf("请输三角形边长:");
scanf("%d",b);
printf("\n");
printf("请输三角形边长:");
scanf("%d",c);
printf("\n");
if(a+b=c||a+c=b||b+c=a)
printf("invalid!\n");
else
{
if(a==c||a==b||b==c)
{
if(a==ca==b)
printf("等边三角形!\n");
else
printf("等腰三角形!\n");
}
else printf("斜三角形!\n");
}
}
//getchar();
return 0;
}
这样子在我的linux下运行没有任何错误,就不知道在你那是出什么问题了
#includestdio.h
#includemath.h
main()
{ float a,b,c;
float s,area;
scanf("%f,%f,%f",a,b,c);
if(a+bcb+caa+cb)
{ s=(a+b+c)/2;
area=sqrt(s*(s-a)*(s-b)*(s-c)); //有改动
printf("the area is:%f\n",area);
if(a==ba==c)
printf("equilateral triangle\n");
else if(a==b||b==c||a==c)
printf("isoceles triangle\n");
else if(fabs(a*a+b*b-c*c)1e-8||fabs(a*a+c*c-b*b)1e-8||fabs(b*b+c*c-a*a)1e-8) //有改动
printf("right angled triangle\n");
else
printf("triangle");
}
else
printf("can not compose triangle");
}
按照你的要求编写的判断三角形类型的C语言程序如下
#includestdio.h
#includemath.h
float cal_area(float a,float b,float c){
float p,s;
p=(a+b+c)/2;
s=sqrt(p*(p-a)*(p-b)*(p-c));
return s;
}
int main(){
int i,n;
float a,b,c,e=0.001;
scanf("%d",n);
for(i=0;in;i++){
scanf("%f%f%f",a,b,c);
if(a+b=c || a+c=b || b+c=a){
printf("no triangle\n");
}else if(fabs(a-b)e fabs(b-c)e){
printf("equilateral triangle,");
printf("%.1f\n",cal_area(a,b,c));
}else if((fabs(a-b)e || fabs(b-c)e || fabs(a-c)e) (fabs(a*a+b*b-c*c)e || fabs(a*a+c*c-b*b)e || fabs(b*b+c*c-a*a)e)){
printf("isosceles right triangle,");
printf("%.1f\n",cal_area(a,b,c));
}else if(fabs(a-b)e || fabs(b-c)e || fabs(a-c)e){
printf("isosceles triangle,");
printf("%.1f\n",cal_area(a,b,c));
}else if(fabs(a*a+b*b-c*c)e || fabs(a*a+c*c-b*b)e || fabs(b*b+c*c-a*a)e){
printf("right triangle,");
printf("%.1f\n",cal_area(a,b,c));
}else{
printf("general triangle,");
printf("%.1f\n",cal_area(a,b,c));
}
}
return 0;
}
运行结果
3
3.0 2.0 6.0
no triangle
3.0 4.0 5.0
right triangle,6.0
1.0 1.0 1.414
isosceles right triangle,0.5
你对r赋值的时候用了两个等于号“==”,赋值用一个等于号,判断 的时候采用两个!
而且输出语句应该放在第一个if外面,应该就这两个问题,代码如下:
#include stdio.h
int main(){
int a, b, c, r;
printf("Please input three integers:\n");
scanf("%d%d%d",a,b,c);
if(a == b ==c) r = 3;
else{
if(a + b c a - b c){
if(b + c a b - c a){
if(a + c b a - c b){
if(a * a == b * b + c * c || b * b == a * a +c * c || c * c == a * a + b * b)
r = 1;
else if((a == b a != c) || (b == c a != b )|| (a ==c b != a))
r = 2;
else
r = 0;
}
else
r = -1;
}
else
r = -1;
}
else
r =-1;
}
if(r == -1)
printf("Tt's not an integer.");
else if(r == 0)
printf("It's an scalenous triangle.");
else if(r == 1)
printf("It's an right-angeld triangle.");
else if(r == 2)
printf("It's an isosceles triangle.");
else if(r == 3)
printf("It's an equilateral triangle.");
return 0;
}
需要准备的材料分别有:电脑、C语言编译器。
1、首先,打开C语言编译器,新建一个初始.cpp文件,例如:test.cpp。
2、在test.cpp文件中,输入C语言代码:。
int a, b, c;
scanf("%d%d%d", a, b, c);
if ( a + b c a + c b b + c a)
printf("能");
else
printf("不能");
return 0;
3、编译器运行test.cpp文件,此时输入3个边整数,成功输出了能不能构成三角形的判断结果。