【C语言】判断三角形类型

根据输入的三角形的三边判断三角形的类型,并输出其面积和类型。

#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main()
{
	float a, b, c;
	float s, area;
	printf("please input three line:\n");
	scanf("%f%f%f", &a, &b, &c);
	//判断是否满足三角形条件:两边之和是否大于第三边;
	if (a + b > c&&b + c > a&&a + c > a)
	{
		s = (a + b + c) / 2;
		area = (float)sqrt(s*(s - a)*(s - b)*(s - c));//三角形面积计算;
		printf("the area is: %f", area);
		printf("\n");
		//判断三条边是否相等;
		if (a == b&&a == c)
		{
			printf("等边三角形\n");
		}
		//判断三角形是否有两天边相等;
		else if (a == b || a == c || b == c)
		{
			printf("等腰三角形\n");
		}
		//判断是否有两边的平方和大于第三边的平方;
		else if ((a*a + b*b == c*c) || (a*a + c*c == b*b) || (b*b + c*c == a*a))
		{
			printf("直角三角形\n");
		}
		else
		{
			printf("一般三角形\n");
		}
	}
	else
	{
		printf("三边不能构成三角形\n");
	}
	system("pause");
	return 0;
}

此处应该注意“&&”和“||”的正确使用:

使用“&&”逻辑与运算符,需要同时满足多种情况时。

使用“||”逻辑或运算符,需要满足几种情况中的一种时。

时间: 2024-10-15 22:56:31

【C语言】判断三角形类型的相关文章

九度oj 题目1048:判断三角形类型

题目1048:判断三角形类型 时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:8240 解决:3992 题目描述: 给定三角形的三条边,a,b,c.判断该三角形类型. 输入: 测试数据有多组,每组输入三角形的三条边. 输出: 对于每组输入,输出直角三角形.锐角三角形.或是钝角三角形. 样例输入: 3 4 5 样例输出: 直角三角形 1 #include <iostream> 2 #include <algorithm> 3 using namespace std; 4 i

判断三角形类型-2009年哈尔滨工业大学计算机研究生机试真题

题目描述: 给定三角形的三条边,a,b,c.判断该三角形类型. 输入: 测试数据有多组,每组输入三角形的三条边. 输出: 对于每组输入,输出直角三角形.锐角三角形.或是钝角三角形. 样例输入: 3 4 5 样例输出: 直角三角形 解题代码: #include <stdio.h> int main(){ int arr[3]; int temp; while (scanf("%d%d%d",&arr[0],&arr[1],&arr[2] ) != EO

九度OJ—题目1048:判断三角形类型

题目描述: 给定三角形的三条边,a,b,c.判断该三角形类型. 输入: 测试数据有多组,每组输入三角形的三条边. 输出: 对于每组输入,输出直角三角形.锐角三角形.或是钝角三角形. 样例输入: 3 4 5 样例输出: 直角三角形 来源: 2009年哈尔滨工业大学计算机研究生机试真题 答疑: 解题遇到问题?分享解题心得?讨论本题请访问:http://t.jobdu.com/thread-7772-1-1.html #include <iostream> using namespace std;

1048.判断三角形类型

题目描述: 给定三角形的三条边,a,b,c.判断该三角形类型. 输入: 测试数据有多组,每组输入三角形的三条边. 输出: 对于每组输入,输出直角三角形.锐角三角形.或是钝角三角形. 样例输入: 3 4 5 样例输出: 直角三角形 #include<iostream> using namespace std; int sanjiaoxing(int a,int b,int c){ int temp; if(a<b){ temp=a; a=b; b=temp; } if(a<c){ t

「C语言」「算法」根据三边判断三角形类型

1 #include <stdio.h> 2 3 //根据三边长判断是否能组成三角形,分别以边长和角度看能组成什么三角形 4 5 int main(){ 6 int a,b,c; 7 printf("请输入三边的长,并以逗号隔开:\n"); 8 scanf("%d,%d,%d",&a,&b,&c); 9 if(a<=0 || b<=0 || c<=0){ 10 printf("请输入正数");

C#中通过三边长判断三角形类型

对于<编程之美>P292上关于三角形测试用例的问题,题目是这样的: 输入三角形的三条边长,判断是否能构成一个三角形(不考虑退化三角形,即面积为零的三角形),是什么样的三角形(直角.锐角.钝角.等边.等腰). 函数声明为:byte GetTriangleType(int,int,int). 1. 如何用一个byte来表示各种输出情况? 2. 如果你是一名测试工程师,应该如何写测试用例来完成功能测试呢? 我的解答 1. 我不知道如何用一个byte表示各种输出情况,谁能指点一下? 下面的程序我只是实

题目1048:判断三角形类型----------有规律的

此题的判断思路:两条较短边的平方和大于最长边的平方,此三角形就是锐角三角形: 两条较短边的平方和小于最长边的平方,此三角形就是钝角三角形: 两条边短边的平方和等于最长边的平方,此三角形就是直角三角形. 由此AC: #include<iostream> using namespace std; int main() { int a,b,c; while(cin>>a>>b>>c) { if ((c*c+a*a-b*b==0)||(b*b+a*a-c*c==0)

判断三角形的类型并求其面积

一.问题描述 根据输入的三角形的三条边判断三角形的类型,并输出其面积和类型. 二.算法思想 首先判断其两条边之和是否大于第三边,若大于则判断可以构成三角形,再进一步判断该三角形是什么三角形,并计算这个三角形的面积:否则不能构成三角形. ①从键盘输入三角形的三条边 ②判断两边之和是否大于第三条边 ③若条件成立,则可以构成一个三角形,计算其面积.已知三角形的三个边长,计算其面积计算方法: A.海伦公式.已知三角形三边长分别为a.b.c,则它的面积为:S= p(p?a)(p?b)(p?c) ,其中p为

Python3:判断三角形的类型

# 判断三角形类型def triangle(a,b,c): if a>0 and b>0 and c>0: if a+b>c and b+c>a and a+c>b: if a == b and b == c: return ("这是等边三角形") elif a == b or b == c or c == a: return("这是等腰三角形") else: return("这是不规则三角形") elif a