写点什么

C++ 数学函数、头文件及布尔类型详解

作者:小万哥
  • 2024-04-01
    广东
  • 本文字数:1625 字

    阅读完需:约 5 分钟

C++ 数学函数、头文件及布尔类型详解

C++ 数学

C++ 有许多函数可以让您在数字上执行数学任务。

最大值和最小值

max(x, y) 函数可用于找到 x 和 y 的最大值:


示例


cout << max(5, 10);
复制代码


min(x, y) 函数可用于找到 x 和 y 的最小值:


示例


cout << min(5, 10);
复制代码

C++ <cmath> 头文件

其他函数,例如 sqrt(平方根)、round(四舍五入)和 log(自然对数),可以在 <cmath> 头文件中找到:


示例


// 包含 cmath 库#include <cmath>
cout << sqrt(64);cout << round(2.6);cout << log(2);
复制代码


其他数学函数以下是来自 <cmath> 库的其他流行数学函数列表:


函数 描述abs(x) 返回 x 的绝对值acos(x) 返回 x 的反余弦值asin(x) 返回 x 的反正弦值atan(x) 返回 x 的反正切值cbrt(x) 返回 x 的立方根ceil(x) 将 x 的值四舍五入为最接近的整数cos(x) 返回 x 的余弦值cosh(x) 返回 x 的双曲余弦值exp(x) 返回 e 的 x 次方的值expm1(x) 返回 e 的 x 次方的值减 1fabs(x) 返回浮点数 x 的绝对值fdim(x, y) 返回 x 和 y 之间的正差值floor(x) 将 x 的值向下舍入到最接近的整数hypot(x, y) 返回 sqrt(x²+y²) 而不会发生中间溢出或下溢fma(x, y, z) 在不失去精度的情况下返回 x*y+zfmax(x, y) 返回浮点数 x 和 y 中的最高值fmin(x, y) 返回浮点数 x 和 y 中的最低值fmod(x, y) 返回 x/y 的浮点余数pow(x, y) 返回 x 的 y 次幂的值sin(x) 返回 x 的正弦值(x 以弧度表示)sinh(x) 返回双精度值 x 的双曲正弦值tan(x) 返回角度的正切值tanh(x) 返回双精度值的双曲正切值

C++ 布尔类型

在编程中,经常需要一个只能拥有两个值之一的数据类型,比如:


  • 是 / 否

  • 打开 / 关闭

  • 真 / 假


为此,C++ 提供了一个 bool 数据类型,它可以取 true(1)或 false(0)的值。

布尔值

布尔变量由 bool 关键字声明,只能取 truefalse 的值:


示例


bool isCodingFun = true;bool isFishTasty = false;cout << isCodingFun;  // 输出 1(true)cout << isFishTasty;  // 输出 0(false)
复制代码


从上面的示例中,您可以看出 true 值返回 1,false 返回 0。


但是,通过比较值和变量来返回布尔值更为常见(请参见下一页)。

C++ 布尔表达式

布尔表达式返回一个布尔值,要么是 1(true),要么是 0(false)。


这对于构建逻辑和找到答案很有用。


您可以使用比较运算符,例如大于(>)运算符,来判断表达式(或变量)是否为 true 或 false:


示例


int x = 10;int y = 9;cout << (x > y); // 返回 1(true),因为 10 比 9 更大
复制代码


甚至更简单:


示例


cout << (10 > 9); // 返回 1(true),因为 10 比 9 更大
复制代码


在下面的示例中,我们使用等于(==)运算符来评估一个表达式:


示例


int x = 10;cout << (x == 10);  // 返回 1(true),因为 x 的值等于 10
复制代码


示例


cout << (10 == 15);  // 返回 0(false),因为 10 不等于 15
复制代码

现实生活示例

让我们考虑一个“现实生活示例”,在这个示例中,我们需要找出一个人是否足够年龄投票。


在下面的示例中,我们使用 >= 比较运算符来判断年龄(25)是否大于等于投票年龄限制,这个限制被设置为 18:


示例


int myAge = 25;int votingAge = 18;
cout << (myAge >= votingAge); // 返回 1(true),意味着 25 岁的人可以投票!
复制代码


很酷,不是吗?一个更好的方法(因为我们现在在进行中),是将上面的代码包装在 if...else 语句中,这样我们就可以根据结果执行不同的操作:


示例


如果 myAge 大于或等于 18,则输出“足够年龄投票!”。否则输出“不足年龄投票。”:
int myAge = 25;int votingAge = 18;
if (myAge >= votingAge) { cout << "足够年龄投票!";} else { cout << "不足年龄投票。";}
// 输出:足够年龄投票!
复制代码


布尔类型是所有 C++ 比较和条件的基础。


填写缺失部分以打印值 1(表示 true)和 0(表示 false):


bool isCodingFun = true;bool isFishTasty = false;cout << isCodingFun;cout << isFishTasty;
复制代码

最后

为了方便其他设备和平台的小伙伴观看往期文章:


微信公众号搜索:Let us Coding,关注后即可获取最新文章推送


看完如果觉得有帮助,欢迎点赞、收藏、关注

发布于: 刚刚阅读数: 5
用户头像

小万哥

关注

代码如人生 2023-02-09 加入

编程爱好者

评论

发布
暂无评论
C++ 数学函数、头文件及布尔类型详解_程序人生_小万哥_InfoQ写作社区