当前位置: 首页 > news >正文

CExercise_05_1函数_2海伦公式求三角形面积

题目:

键盘录入三个边长(带小数),然后用海伦公式计算三角形的面积(如果它确实是一个三角形的话)

海伦公式求三角形面积:
在这里插入图片描述

要求基于下列两个函数完成这个编程题:

// 判断abc是否可以组成三角形,true表示可以组成,false表示不可以 bool is_triangle(int a, int b,
int c);

// 利用海伦公式在abc可以构成三角形的前提下,求三角形面积 double get_area(int a, int b, int c);
注意:不要忘记使用sqrt函数要包含头文件<math.h>


关键点

注意细节 除以2.0,整个式子是double类型的,这样能精确计算.

在这里插入图片描述


分析:

:声明和定义在main()之前可以一步到位.

在这里插入图片描述


代码

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdbool.h>
#include <math.h>/*
海伦公式计算三角形的面积
*///判断abc是否可以组成三角形,true可,false假
bool is_triangle(int a, int b, int c);//利用海伦公式在abc可以构成三角形的前提下,求三角形面积
double get_area(int a, int b, int c);bool is_triangle(int a, int b, int c) {//任意两边之和大于第三边return (a + b > c) && (a + c > b) && (b + c > a);
}double get_area(int a, int b, int c) {//错误的:  double s = (a+ b + c)/2; //计算半周长double s = (a+ b + c)/2.0; //计算半周长return sqrt(s * (s - a) * (s - b) * (s - c));//使用海伦公式计算面积
}int main(void) {int a, b, c;//三角形的三边printf("请输入三角形的三边:");scanf(" %d%d%d", &a, &b, &c);if (!is_triangle(a, b, c)) {//不能组成三角形printf("Error: 无法组成三角形!\n");return -1;}//可以组成三角形,于是计算三角形面积double area = get_area(a, b, c);printf("三角形面积是: %.2lf\n", area);return 0;
}

在这里插入图片描述


解决方案总结:


http://www.mrgr.cn/news/97082.html

相关文章:

  • 大模型学习四:‌DeepSeek Janus-Pro 多模态理解和生成模型 本地部署与调用指南
  • Leetcode 437 -- dfs | 前缀和
  • centos8上实现lvs集群负载均衡dr模式
  • swift-oc和swift block和代理
  • Dive into Deep Learning - 2.4. Calculus (微积分)
  • 如何实现浏览器中的报表打印
  • yolov12检测 聚类轨迹运动速度
  • 【小沐杂货铺】基于Three.JS绘制太阳系Solar System(GIS 、WebGL、vue、react)
  • Vanna:用检索增强生成(RAG)技术革新自然语言转SQL
  • #SVA语法滴水穿石# (002)关于 |-> + ##[min:max] 的联合理解
  • JAVA线程安全
  • orangepi zero烧录及SSH联网
  • c++项目 网络聊天服务器 实现
  • Neo4j操作数据库(Cypher语法)
  • Java 大视界 -- 基于 Java 的大数据机器学习模型在图像识别中的迁移学习与模型优化(173)
  • Linux线程同步与互斥:【线程互斥】【线程同步】【线程池】
  • leetcode117 填充每个节点的下一个右侧节点指针2
  • hackmyvm-Principle
  • 《概率论与数理统计》期末复习笔记_下
  • QGIS实战系列(六):进阶应用篇——Python 脚本自动化与三维可视化