UT源码 040

设计三角形问题的程序

      输入三个整数a、b、c,分别作为三角形的三条边,现通过程序判断由三条边构成的三角形的类型为等边三角形、等腰三角形、一般三角形(特殊的还有直角三角形),以及不构成三角形。(等腰直角三角形,判断为等腰三角形)

     现在要求输入三个整数a、b、c,必须满足以下条件:

     条件1   1≤a≤100          条件4   a<b+ c

     条件2   1≤b≤100          条件5   b<a+ c            

     条件3   1≤c≤100          条件6   c<a+ b 

  String triangle(int a,int b,int c)    返回字符型

 程序要求:

1)先显示:“请输入三角形的三条边:”

2)只要有不满足条件1,2,3之一,就返回“边的值不在范围内!”

3)只要有不满足4,5,6之一,就返回“不构成三角形”

4)根据边的情况分别返回:“等边三角形”“等腰三角形”“直角三角形”“一般三角形”

 

#include "stdafx.h"
#include "stdio.h"


char* triangle(int a, int b, int c)
{
if ((a >= 1 || a <= 100) && (b >= 1 || b <= 100) && (c >= 1 || c <= 100))
{
if (a<(b + c) && b<(a + c) && c<(a + b))
{
if (a == b&&b == c)
{
return "等边三角形\n";
}
else if (a == b || a == c || b == c)
{
return "等腰三角形\n";
}
else if (a*a == (b*b + c*c) || b*b == (a*a + c*c) || c*c ==( a*a + b*b))
{
return "直角三角形\n";
}
else
{
return "一般三角形\n";
}
}
else
{
return "不构成三角形\n";
}
}
else
{
return "边的值不在范围内\n";
}
}

 

int main()
{
printf("请输入三角形的三条边:");
float a[3] = {0.0f};
if (scanf("%f %f %f", &a[0], &a[1], &a[2]) != 3)
{
printf("输入格式错误!\n");
return 0;
}
float n;
int m;

//判断是否为整数
for (m = 0; m < 3; m++)
{
n = a[m];
if (n >= 0)
{
if ((n - (int)n) < 1e-6 || (n - (int)n) > 0.999999)
continue;
else
{
printf("不是整数\n");
break;
}
}
else
{
if (-(n - (int)n) < 1e-6 || -(n - (int)n) > 0.999999)
continue;
else
{
printf("不是整数\n");
break;
}
}
}
if (m==3)
printf("%s", triangle(a[0], a[1], a[2]));

getchar();
getchar();
return 0;
}

 

转载于:https://www.cnblogs.com/ELPSY/p/6533164.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值