C语言编写程序 输入三条边,判断能否组成三角形,若能,求面积,若不能则输出不能组成三角形,并用do…whi...

作者&投稿:夹阮 (若有异议请与网页底部的电邮联系)
c语言编写程序:输入三角形的三条边,判断它们能否构成三角形,若能则指出何种三角形。~

&&、||运算符使用错误,代码为:
#include
int main()
{
float a,b,c;
printf("请输入边长:
");
scanf("%f,%f,%f",&a,&b,&c);
if(a+b>=c || a+c>=b || b+c>=a)
{ if (a==b&&a==c&&b==c)
printf("等边三角形
");
else if ((a*a+b*b==c*c)||(a*a+c*c==b*b)||(b*b+c*c==a*a))
printf("直角三角形
");
else if (a==b||a==c||b==c )
printf("等腰三角形
"); }
else
printf("普通三角形
");
return 0;
}

扩展资料:
&&、|| 和 !的优先级为:
! > && > ||
! 运算符比许多 C++ 运算符具有更高的优先级。因此,为了避免错误,应始终将其操作数括在括号中,除非打算将其应用于没有其他操作符的变量或简单表达式。例如,来看以下表达式:
! (x > 2)! x > 2
第一个表达式将 !运算符应用于表达式 x>2,它是在问“x 是否不大于 2”,然而,第二个表达式是将 !运算符应用于到 x。它是在问“x 的逻辑是否大于 2”。
假设 x 被设置为 5,由于 5 是非零值,所以被认为是 true,而 !运算符会将其反转为 false,即为 0,然后,> 运算符将确定 0 是否大于 2。为了避免这种错误,始终使用括号是明智的。
参考资料:
百度百科-逻辑运算符

#include
#include
int main()
{
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
if(a<=0 || b<=0 || c<=0)
{
printf("input error!
");
}
if(a+b>c && a+c>b && b+c>a) //两边之和大于第三边,两边只差小于第三边。
{
printf("yes
");
float p = 1.0*(a+b+c)/2;
float s = sqrt(p*(p-a)*(p-b)*(p-c));
printf("area = %f",s);
}
else
{
printf("no");
}
return 0;
}

运行效果
3 4 5
yes
area = 6.000000

#include<stdio.h>
#include<stdlib.h>
#include<math.h>
main()
{
double a,b,c,p,area;
do {
printf("input a b c\n");
scanf("%lf %lf %lf",&a,&b,&c);
p = (a+b+c) /2.0;
if ((p-a)>0 && (p-b) > 0 && (p-c) > 0){
area = sqrt(p*(p-a)*(p-b)*(p-c));
break;
} else printf("wrong a,b,c\n");
} while(1);
printf("Area=%lf\n",area);
return 0;
}

double x,y,z,sum,t,area;
do{
    scanf("%d%d%d",&x,&y,&z);
    if(x>y){//以下三个if是为这三个数排序;
        t=x;x=y;y=t;
    }
    if(z<x){
        t=z;z=y;y=x;x=t;
    }
    if(z>=x&&z<=y){
        t=z;z=y;y=t;
    }
    if((x+y)>z&&(z-x)<y){//判断是否能够成三角形
        sum=(x+y+z)/2;
        area = sqrt(sum*(sum-x)*(sum-y)*(sum-z));计算面积
        printf("%d
",&area);break;输出面积并跳出循环!
    }
}while(1)

代码大概就是这样、没经过编译、不知道有没有错、你试试吧、思路是没错的!




东源县15548516176: 编写C语言程序,输入a,b,c三个数,分别用它们作为三条边,判断能否构成三角形并输出相应信息构成三角形的条件是:任意两边之和大于第三边 -
却娥美常:[答案] #include void main() { int a,b,c; puts("please input three integers:"); scanf("%d %d %d",&a,&b,&c); if(a+b
东源县15548516176: c语言编写程序:输入三角形的三条边,判断它们能否构成三角形,若能则指出何种三角形. -
却娥美常: 数学问题啊.两边之和大于第三边,两边之差小于第三边,两边相等是等腰三角形,三边相等是等边三角形.满足勾股定理是直角三角形. 如果还要判断是否是锐角三角形钝角三角形那只能用余弦定理了.百度搜一下就可以了1

东源县15548516176: 输入三角形的三条边a, b, c的值,用C语言判断这三条边能否构成三角形. -
却娥美常: 根据你发的图片要求,代码如下: #include <stdio.h>int main() {int a, b, c;scanf("%d %d %d", &a, &b, &c);if (a + b > c && a + c > b && b + c > a){if (a == b && b == c){printf("该三角形为等边三角形\n");}else if (a == b || a == c){...

东源县15548516176: C语言 输入三角形三边a,b,c,判断是否能构成三角形 ,若能并判断是等腰,等边,直角还是一般三角形 -
却娥美常: #include <stdio.h>void main(void){int a,b,c;printf("请输入三个边长:\n");scanf("%d %d %d",&a,&b,&c);if(a+b>c && a+c>b && b+c>a)if(a*a==b*b+c*c || b*b==a*a+c*c || c*c==a*a+b*b)printf("可以构成一个直角三角形.\n");else ...

东源县15548516176: 编写一个程序实现:从键盘输入三角形的3条边长,判断它能构成怎样的三角形,还是不能构成三角形.C++的. -
却娥美常:[答案] 楼上的基本可以,不过漏了点东西,构成三角形还有个条件是任意两边之差小于第三边,另外没有打印能构成普通三角形的情况,我改进了下#include#include using namespace std;void main(){coutb;cin>>c;if(a+b>c&&a+c>b&&b...

东源县15548516176: 编写C程序.实现根据用户输入的三角形的三条边长判定是何种三角形#include #includemain(){float a,b,c;printf("输入三角形的三条边a,b,c:");scanf("%f,%f,... -
却娥美常:[答案] Turbo 2.0 编译通过! #include #include main() { float a,b,c; /*printf("输入三角形的三条边a,b,c:"); */ printf("please input triangle side a,b,c:"); scanf("%f,%f,%f",&a,&b,&c); /* 判断三边是否构成三角形 任意两条边的和大于另一条边,写程序时...

东源县15548516176: C语言...输入三角形的三边长,判断能否构成三角形,能,求面积... -
却娥美常: #include void main() { float a,b,c,p,s; printf("\n请输入三角行的三边:"); scanf("%f%f%f",&a,&b,&c); if(a>0&&b>0&&c>0) { if((a+b>c)&&(a+c>b)&&(b+c>a))//两边之和大于第三边 { printf("\n这三边能组成三角形\n"); p=(a+b+c)/2; s=sqrt(p*(p-a)*(...

东源县15548516176: 输入三角形任意三条边,判断是否能够成三角形,如果可以构成三角形求面积C语言 -
却娥美常: #includevoid main() {int a,b,c;printf("Please Input a,b,c:");scanf("%d",&a);scanf("%d",&b);scanf("%d",&c);if(a+b<=c||a+c<=b||b+c<=a) 内/*判断是否能构成三角形容*/printf("No!\n");else{printf("Yes!\n");if(a==c||a==b||b==c...

东源县15548516176: c语言从键盘任意输入三个正数作为三角形的边长,编写代码判断是否能组成三角形, -
却娥美常: 一、数学定理. 判断三边是否可以组成三角形,数学定理为,任意两边和必须大于第三边. 二、流程. 1、输入三条边长度; 2、 由于题目限制输入为三个正数,所以无需判断输入的合法性,直接对任意两边相加,判断是否大于第三边即可; ...

东源县15548516176: C语言:输入三角形的三条边a,b,c,判断它们能否构成等腰直角三角形 -
却娥美常: a; a ); } else a) c a >a int + printf("* b c 3) &main() c) a == a b printf(",&等腰直角三角62616964757a686964616fe78988e69d8331333363366131形;>{ int \n输入三角形的三条边;);{ if(c } else + );b 等腰三角形; } else ;+ b b );if(b * == c >...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网