#include stdio.h
成都创新互联长期为上1000家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为通化县企业提供专业的网站制作、做网站,通化县网站改版等技术服务。拥有10多年丰富建站经验和众多成功案例,为您定制开发。
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下运行没有任何错误,就不知道在你那是出什么问题了
按照你的要求编写的判断三角形类型的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;
}
#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");
}
售后响应及时
7×24小时客服热线数据备份
更安全、更高效、更稳定价格公道精准
项目经理精准报价不弄虚作假合作无风险
重合同讲信誉,无效全额退款