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 次方的值减 1
fabs(x)
返回浮点数 x 的绝对值
fdim(x, y)
返回 x 和 y 之间的正差值
floor(x)
将 x 的值向下舍入到最接近的整数
hypot(x, y)
返回 sqrt(x²+y²) 而不会发生中间溢出或下溢
fma(x, y, z)
在不失去精度的情况下返回 x*y+z
fmax(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
关键字声明,只能取 true
或 false
的值:
示例
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
,关注后即可获取最新文章推送
看完如果觉得有帮助,欢迎点赞、收藏、关注
热门相关:剑斗九天 九星毒奶 我的女友不可能是怪物 超级英雄 无敌大佬要出世