当前位置:首页 » 编程语言 » c语言三角形判断

c语言三角形判断

发布时间: 2022-12-31 01:09:24

1. c语言 判断三角形的类型

#include<stdio.h>
int
main(){
float
a,b,c,temp;
do{
printf("Please
input
a,b,c:\n");
scanf("%f%f%f",&a,&b,&c);
/*对a,b,c从小到大排序*/
if(a>b){temp=a;a=b;b=temp;}
if(a>c){temp=a;a=c;c=temp;}
if(b>c){temp=b;b=c;c=temp;}
if(a+b>c)break;
else
{printf("三角形不成立\n");}
}while(1);
if(a==b&b==c)printf("等边三角形\n");
else
if(a==b)
if(a*a+b*b==c*c)printf("等腰直角三角形\n");
else
printf("等腰三角形\n");
else
if(a*a+b*b==c*c)printf("直角三角形\n");
else
printf("一般三角形\n");
}
你可以试验一下,基本满足要求,只有等腰直角三角形,不好测试,因为肯定有边是带根号的
无法输入根号的数据啊

2. c语言判断三角形形状

你对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;
}

3. c语言判断三角形

#include <stdio.h>
int main()
{
int a,b,c;
printf("输入三角形的三条边: ");
scanf("%d%d%d",&a,&b,&c);
if(a+b>c && a+c>b && b+c>a)
printf("三角形的周长为: %d\n",a+b+c);
else
printf("No\n");
return 0;
}示例运行结果:
输入三角形的三条边:
3
4
5
三角形的周长为:
12
输入三角形的三条边:
1
5
6
No

4. c语言判断三角形

#include<stdio.h>
intmain()
{
inta,b,c;
printf("输入三角形的三条边:");
scanf("%d%d%d",&a,&b,&c);
if(a+b>c&&a+c>b&&b+c>a)
printf("三角形的周长为:%d ",a+b+c);
else
printf("No ");
return0;
}

示例运行结果:

输入三角形的三条边: 3 4 5

三角形的周长为: 12


输入三角形的三条边: 1 5 6

No

5. 用c语言判断三角形

判断三角形---抛砖引玉参考资料:http://tieba..com/p/482306039

#include<stdio.h>

#include<stdlib.h>


voidinput(int&a,int&b,int&c)

{

printf("inputthea=");

scanf("%d",&a);

printf(" ");

printf("inputtheb=");

scanf("%d",&b);

printf(" ");

printf("inputthec=");

scanf("%d",&c);

printf(" ");

}

intpanan(inta,intb,intc)

{

if(a>=100&&a<=1)

{

return0;

exit(0);

}

if(b>=100&&b<=1)

{

return0;

exit(0);

}

if(c>=100&&c<=1)

{

return0;

exit(0);

}

if(a<b+c)

if(b<a+c)

if(c<a+b)

return4;

else

return0;

}

voidleixing(inti)

{

switch(i)

{

case'0':

printf("a,b,c不能组成一个三角形! ");

case'1':

printf("a,b,c组成了一个等边三角形! ");

case'2':

printf("a,b,c组成了一个等腰三角形! ");

case'3':

printf("a,b,c组成了一个直角三角形! ");

case'4':

printf("a,b,c组成一个普通的三角形! ");

default:

printf("a,b,c组成一个普通的三角形! ");

}

}

intdengbian(inta,intb,intc)

{

if(a==b)

if(b==c)

return1;

else

return0;

}

intdengyao(inta,intb,intc)

{

if(a==b||b==c||c==a)

return2;

else

return0;

}

intjiao(inta,intb,intc)

{

if((a*a)==(b*b)+(c*c))

{

return3;

exit(0);

}

if((b*b)==(c*c)+(a*a))

{

return3;

exit(0);

}

if((c*c)==(b*b)+(a*a))

{

return3;

exit(0);

}

else

return0;

}

intxingzhuang(inta,intb,intc)

{

inttemp=0;

temp=dengbian(a,b,c);

if(temp)

{

returntemp;

exit(0);

}

temp=dengyao(a,b,c);

if(temp)

{

returntemp;

exit(0);

}

temp=jiao(a,b,c);

if(temp)

{

returntemp;

exit(0);

}

else

return1;

}

voidmain()

{

inta,b,c;

inttemp;

input(a,b,c);

//printf("%d%d%d",a,b,c);

temp=panan(a,b,c);

//printf("%d",temp);

if(temp==1)

{

temp=xingzhuang(a,b,c);

//printf("%d",temp);

leixing(temp);

}

else

leixing(temp);

}

6. C语言:三角形类型判断(循环)

按照你的要求编写的判断三角形类型的C语言程序如下

#include<stdio.h>
#include<math.h>
floatcal_area(floata,floatb,floatc){
floatp,s;
p=(a+b+c)/2;
s=sqrt(p*(p-a)*(p-b)*(p-c));
returns;
}
intmain(){
inti,n;
floata,b,c,e=0.001;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%f%f%f",&a,&b,&c);
if(a+b<=c||a+c<=b||b+c<=a){
printf("notriangle ");
}elseif(fabs(a-b)<e&&fabs(b-c)<e){
printf("equilateraltriangle,");
printf("%.1f ",cal_area(a,b,c));
}elseif((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("isoscelesrighttriangle,");
printf("%.1f ",cal_area(a,b,c));
}elseif(fabs(a-b)<e||fabs(b-c)<e||fabs(a-c)<e){
printf("isoscelestriangle,");
printf("%.1f ",cal_area(a,b,c));
}elseif(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("righttriangle,");
printf("%.1f ",cal_area(a,b,c));
}else{
printf("generaltriangle,");
printf("%.1f ",cal_area(a,b,c));
}
}
return0;
}


运行结果
3
3.02.06.0
notriangle
3.04.05.0
righttriangle,6.0
1.01.01.414
isoscelesrighttriangle,0.5

7. 怎样用C语言判断三角形类型(等边,等腰,直角,等腰直角)

#include<stdio.h>
main()
{
doublea[3],b;
while(1){
scanf("%lf%lf%lf",&a[0],&a[1],&a[2]);//输入三边
if(a[0]>0&&a[1]>0&&a[2]>0){//三边中任何一边都得大于0
if(a[0]<a[1]){b=a[0];a[0]=a[1];a[1]=b;}//将最大的边交换到a[0]中
if(a[0]<a[2]){b=a[0];a[0]=a[2];a[2]=b;}
if(a[1]+a[2]<=a[0]){
printf("不是三角形 ");continue;}//两个短边之和不大于第三边,不是三角形
if(((int)(a[1]*a[1])+(int)(a[2]*a[2])==(int)(a[0]*a[0]))&&(a[0]==a[1]||a[1]==a[2]||a[0]==a[1])){
printf("等腰直角三角形 ");continue;}//两个短边的平方=长边的平方就是直角
if((int)(a[1]*a[1])+(int)(a[2]*a[2])==(int)(a[0]*a[0])){
printf("直角三角形 ");continue;}
if(a[0]==a[1]&&a[0]==a[2]){
printf("等边三角形 ");continue;}
if(a[0]==a[1]||a[1]==a[2]||a[0]==a[1]){
printf("等腰三角形 ");continue;}
}else
printf("不是三角形 ");
}
}
//这里计算直角三角形时,转成int在进行比较,是为了降低精度,特别是计算等腰直角三角形,
//根号2,是无限的小数,不降低精度很难能得到的相等关系的。

如图所示,望采纳。。。。。。

8. c语言如何判断abc能否构成三角形

#include <stdio.h>

int main()

float a,b,c;

printf("请输入三边的边长:");

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("(%.2f,%.2f,%.2f)能围成三角形\n",a,b,c);

else

printf("(%.2f,%2.2f,%.2f)不能围成三角形\n",a,b,c);

return 0;

判断三角形类型。输入三角形的三条边a,b,c,判断它们能否构成三角形。若能构成三角形,指出是何种三角形(等腰三角形、等边三角形、直角三角形、等腰直角三角形、一般三角形),计算精度:1E-1。

输入提示信息:“Input a,b,c:”

输入格式:"%f,%f,%f"。

9. C语言 判断三角形的类型

#include <iostream.h>
void main()
{
cout<<"请输入三角形三边"<<endl;
int a,b,c;
cin>>a>>b>>c;
if ((a + b) <= c || (a - b) >= c || (a+c) <= b || (a - c) >=b || (b+c)<= a || (b-c)>=a)
{
cout<<"三角形不成立!"<<endl;
}
else
{
if (a==b)
{
if (a==c)
{
cout<<"等边"<<endl;
}
else if (a!=c&&a*a+b*b==c*c)
{
cout<<"等腰直角"<<endl;
}
else
{
cout<<"等腰"<<endl;
}
}
else if (a==c)
{
if (a==b)
{
cout<<"等边"<<endl;
}
else if (a!=c&&a*a+c*c==b*b)
{
cout<<"等腰直角"<<endl;
}
else
{
cout<<"等腰"<<endl;
}
}
else if (b==c)
{
if (a==b)
{
cout<<"等边"<<endl;
}
else if (a!=c&&a*a==c*c+b*b)
{
cout<<"等腰直角"<<endl;
}
else
{
cout<<"等腰"<<endl;
}
}
else
{
if (a*a==c*c+b*b || a*a+c*c==b*b || a*a+b*b==c*c)
{
cout<<"直角"<<endl;
}
else
{
cout<<"其他"<<endl;
}
}

}
}

说白了是对三角形的数学判断,就是三角形三边性质,成立的条件是两边之和大于第三边,之差小于第三边。

热点内容
存储控制器hp 发布:2025-07-03 08:59:51 浏览:502
密码锁延安多少一条 发布:2025-07-03 08:58:14 浏览:320
linux中gcc 发布:2025-07-03 08:51:04 浏览:409
用什么玩逆战不需要配置 发布:2025-07-03 08:30:33 浏览:692
小鸡模拟器大厅服务器ip 发布:2025-07-03 08:19:37 浏览:219
linux控制面板 发布:2025-07-03 07:48:44 浏览:432
mysql复制数据库及数据 发布:2025-07-03 07:39:36 浏览:802
java运行下载 发布:2025-07-03 07:39:29 浏览:12
simditor图片上传 发布:2025-07-03 07:35:34 浏览:885
php签到代码 发布:2025-07-03 07:27:38 浏览:573