c语言如何判定是不是三角形,c语言怎么判定三角形

本文目录一览:

用C语言判断三角形

#include iostream.h

int main(void)

{

int a,b,c;

cout”请输入3个参数:”endl;

cinabc;

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

{

if (a==b a==c) cout”等边三角形”endl;

else if (a==b || a==c || b==c) cout”等腰三角形”endl;

else cout”不等边三角形”endl;

}

else cout”无法组成三角形”endl;

return(0);

}

请问c语言判定是三角形的条件是什么?

任意两边的和大于第三边

例如

#include “stdio.h”

int main()

{

double a,b,c;

printf(“请输入三边长:”);

scanf(“%lf%lf%lf”,a,b,c)

if(a+bc a+cb b+ca)

printf(“输入三边长可以组成一个三角形!\n”);

else

printf(“输入三边长不可以组成一个三角形!\n”);

}

C语言,怎么编程判断三角形的形状?

代码如下:

#include stdio.h

#include stdlib.h

#define EPSINON  1e-3

#define ABS(a)  (((a)0)?(a):(-a)) //?:不支持表达式嵌套

#define ZERO(x)  ((x)-EPSINON (x)EPSINON)

#define MAX(a,b) (((a)(b))?(a):(b))

#define MIN(a,b) (((a)(b))?(a):(b))

float a, b, c;

float max, mid, min;

char input_err_flag = 0;

char judge_err_flag = 0;

int equal(float a, float b)

{

float tmp;

tmp = a – b;

tmp = ZERO(ABS(tmp));

return tmp;

}

void input(void)

{

a = b = c = 0;

printf(“输入三条边的值:”);

scanf(“%f %f %f”,a, b, c);

if(!(a0) || !(b0) || !(c0))

{

input_err_flag = 1;

}

}

void sort(void)

{

max = MAX(MAX(a,b),c);

min = MIN(MIN(a,b),c);

if(MAX(a,b) c)

mid = MAX(a,b);

else

mid = MAX(MIN(a,b),c);

}

void judge(void)

{

float max_square, mid_square, min_square, tmp;

if(max = (mid+min))

{

judge_err_flag = 1;

}

else

{

max_square = max * max;

mid_square = mid * mid;

min_square = min * min;

tmp = mid_square + min_square;

if(equal(mid,min) || equal(max, mid))

{

if(equal(mid, min))

{

if(mid == max)

puts(“等边三角形。”);

else if(equal(max_square, tmp))

puts(“等腰直角三角形。”);

else if(max_square tmp)

puts(“等腰锐角三角形。”);

else

puts(“等腰钝角三角形。”);

}

else

{

if(equal(min, mid))

puts(“等边三角形。”);

else

puts(“等腰锐角三角形。”);

}

}

else if(equal(max_square, tmp))

puts(“直角三角形。”);

else if(max_square tmp)

puts(“锐角三角形。”);

else

puts(“钝角三角形。”);

}

}

int main(void)

{

char cs, ch;

do

{

input();

sort();

judge();

if(input_err_flag)

{

input_err_flag = 0;

while((cs=getchar())!=’\n’ (cs=getchar())!=EOF);

printf(“输入错误,a b c必须大于零,是否新输入(y/n):”);

}

else if(judge_err_flag)

{

judge_err_flag = 0;

while((cs=getchar())!=’\n’ (cs=getchar())!=EOF);

printf(“组不成三角形,是否重新输入(y/n):”);

}

else

{

while((cs=getchar())!=’\n’ (cs=getchar())!=EOF);

printf(“是否再输入一组数据(y/n):”);

}

ch = getchar();

}

while(ch==’y’ || ch==’Y’ || ch==’\n’);

puts(“Goodbye!”);

return 0;

}

关于c语言判断是否为三角形的问题

首先是输入3个数,即三角形三条边,要有等于才行

前面3个条件满足,才能构成三角形;否则不是三角形

然后判断,是否有满足直角形的条件;只要有两个边得平方等于另一个边得平方;即使直角三角

形;输出yes

你把最后两个语句去掉看看,还有

else

if(c

b+c)printf(“not

a

triangle\n”);

你打错了

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

#includestdio.h

main()

{

double a[3],b;

while(1){

scanf(“%lf %lf %lf”,a[0],a[1],a[2]);//输入三边 

if(a[0]0a[1]0a[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(“不是三角形\n”);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(“等腰直角三角形\n”);continue;}//两个短边的平方=长边的平方就是直角  

if((int)(a[1]*a[1])+(int)(a[2]*a[2])==(int)(a[0]*a[0])){

    printf(“直角三角形\n”);continue;}

     if(a[0]==a[1]a[0]==a[2]){

    printf(“等边三角形\n”);continue;}      

if(a[0]==a[1]||a[1]==a[2]||a[0]==a[1]){

    printf(“等腰三角形\n”);continue;}

}else

    printf(“不是三角形\n”);

}

}

//这里计算直角三角形时,转成int在进行比较,是为了降低精度,特别是计算等腰直角三角形,

//根号2,是无限的小数,不降低精度很难能得到的相等关系的。

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

用c语言判断三角形

 

判断三角形---抛砖引玉参考资料:

#include stdio.h

#include stdlib.h

void input(int a,int b,int c)

{

printf(“input the a =”);

scanf(“%d”,a);

printf(“\n”);

printf(“input the b =”);

scanf(“%d”,b);

printf(“\n”);

printf(“input the c =”);

scanf(“%d”,c);

printf(“\n”);

}

int panduan(int a,int b,int c)

{

if (a=100  a=1)

{

return 0;

exit(0);

}

if (b=100  b=1)

{

return 0;

exit(0);

}

if (c=100  c=1)

{

return 0;

exit(0);

}

if (ab+c)

if (ba+c)

if (ca+b)

return 4;

else

return 0;

}

void leixing(int i)

{

switch (i)

{

case ‘0’:

printf(“a,b,c不能组成一个三角形!\n”);

case ‘1’:

printf(“a,b,c组成了一个等边三角形!\n”);

case ‘2’:

printf(“a,b,c组成了一个等腰三角形!\n”);

case ‘3’:

printf(“a,b,c组成了一个直角三角形!\n”);

case ‘4’:

printf(“a,b,c组成一个普通的三角形!\n”);

default:

printf(“a,b,c组成一个普通的三角形!\n”);

}

}

int dengbian(int a,int b,int c)

{

if (a==b)

if (b==c)

return 1;

else

return 0;

}

int dengyao(int a,int b,int c)

{

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

return 2;

else

return 0;

}

int zhijiao(int a,int b,int c)

{

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

{

return 3;

exit(0);

}

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

{

return 3;

exit(0);

}

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

{

return 3;

exit(0);

}

else

return 0;

}

int xingzhuang(int a,int b,int c)

{

int temp=0;

temp=dengbian(a,b,c);

if (temp)

{

return temp;

exit(0);

}

temp=dengyao(a,b,c);

if (temp)

{

return temp;

exit(0);

}

temp=zhijiao(a,b,c);

if (temp)

{

return temp;

exit(0);

}

else

return 1;

}

void main()

{

int a,b,c;

int temp;

input(a,b,c);

// printf(“%d%d%d”,a,b,c);

temp=panduan(a,b,c);

// printf(“%d”,temp);

if (temp==1)

{

temp=xingzhuang(a,b,c);

// printf(“%d”,temp);

leixing(temp);

}

else

leixing(temp);

}

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/237813.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-12 12:07
下一篇 2024-12-12 12:07

相关推荐

  • AES加密解密算法的C语言实现

    AES(Advanced Encryption Standard)是一种对称加密算法,可用于对数据进行加密和解密。在本篇文章中,我们将介绍C语言中如何实现AES算法,并对实现过程进…

    编程 2025-04-29
  • 学习Python对学习C语言有帮助吗?

    Python和C语言是两种非常受欢迎的编程语言,在程序开发中都扮演着非常重要的角色。那么,学习Python对学习C语言有帮助吗?答案是肯定的。在本文中,我们将从多个角度探讨Pyth…

    编程 2025-04-29
  • Python被称为胶水语言

    Python作为一种跨平台的解释性高级语言,最大的特点是被称为”胶水语言”。 一、简单易学 Python的语法简单易学,更加人性化,这使得它成为了初学者的入…

    编程 2025-04-29
  • Python打印数字三角形

    本文将详细阐述如何使用Python打印数字三角形,包括从基本代码实现到进阶操作的应用。通过本文的学习,您可以掌握Python的基础语法,同时加深对Python循环和函数的理解,提高…

    编程 2025-04-29
  • OpenJudge答案1.6的C语言实现

    本文将从多个方面详细阐述OpenJudge答案1.6在C语言中的实现方法,帮助初学者更好地学习和理解。 一、需求概述 OpenJudge答案1.6的要求是,输入两个整数a和b,输出…

    编程 2025-04-29
  • Python按位运算符和C语言

    本文将从多个方面详细阐述Python按位运算符和C语言的相关内容,并给出相应的代码示例。 一、概述 Python是一种动态的、面向对象的编程语言,其按位运算符是用于按位操作的运算符…

    编程 2025-04-29
  • Python语言由荷兰人为中心的全能编程开发工程师

    Python语言是一种高级语言,很多编程开发工程师都喜欢使用Python语言进行开发。Python语言的创始人是荷兰人Guido van Rossum,他在1989年圣诞节期间开始…

    编程 2025-04-28
  • Python语言设计基础第2版PDF

    Python语言设计基础第2版PDF是一本介绍Python编程语言的经典教材。本篇文章将从多个方面对该教材进行详细的阐述和介绍。 一、基础知识 本教材中介绍了Python编程语言的…

    编程 2025-04-28
  • Python语言实现人名最多数统计

    本文将从几个方面详细介绍Python语言实现人名最多数统计的方法和应用。 一、Python实现人名最多数统计的基础 1、首先,我们需要了解Python语言的一些基础知识,如列表、字…

    编程 2025-04-28
  • Python作为中心语言,在编程中取代C语言的优势和挑战

    Python一直以其简单易懂的语法和高效的编码环境而著名。然而,它最近的发展趋势表明Python的使用范围已经从脚本语言扩展到了从Web应用到机器学习等广泛的开发领域。与此同时,C…

    编程 2025-04-28

发表回复

登录后才能评论