求用C语言编写一个判定三角形的程序

求用C语言编写一个判定三角形的程序,第1张

假设知道三角形的三边长为a,b,c。程序如下:#include

#include

double

area

(double

a,

double

b,

double

c){

double

area=0,s=0

s=(a+b+c)/2

area=sqrt(s*(s-a)*(s-b)*(s-c))

return

area

}

void

main(){

double

a=10,

b=10,

c=10

/*或者用scanf()输入abc的值*/

printf("area=%.2f",area(a,b,c))

}

错误太多了,就不指出哪里修改了(分5大类错误,1缺少分号,2.{}不配对,3相等关系用==,4.逻辑判断有误5.对三角形成立的条件理解不正确【必须任意两边之和大于第三边,而不是≥第三遍】),直接贴上正确的代码

#include <stdio.h>

int main(void){

int a,b,c

scanf("%d%d%d",&a,&b,&c)

if (a+b<=c||a+c<=b||b+c<=a){

printf("\n不能构成三角形:")

}

else if((a==b||a==c||b==c)&&!(a==b&&b==c&&a==c)){

printf("\n等腰三角形:")

}

else if(a==b&&b==c&&a==c){

printf("\n等边三角形:")

}

else if(a*a+b*b==c*c||b*b+c*c==a*a||a*a+c*c==b*b){

printf("\n直角三角形:")

}

else if((a==b&&a*a+b*b==c*c)||(b==c&&b*b+c*c==a*a)||(a==c&&a*a+c*c==b*b))

printf("\n等腰直角三角形:")

else

printf("\n一般三角形:")

return 0

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11170747.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存