c++作为一种广泛应用于计算机编程的编程语言,其数学函数库可以帮助程序员有效地进行各种数学计算。本文将介绍c++中常用的数学函数库及其使用方法。
一、cmath函数库
cmath函数库是C++中常用的数学函数库,其中包含了各种数学计算所需的数学函数,例如三角函数、指数函数、对数函数、幂函数等。使用cmath函数库需要在程序开头添加#include
- abs()函数
abs()函数用于计算任意数的绝对值,其返回值类型为整型、浮点型或双精度浮点型。
例子:
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int a = -10;
float b = -3.14;
double c = -99.99;
cout <p>输出结果:</p>
<p>abs(a) = 10</p>
<p>abs(b) = 3.14</p>
<p>abs(c) = 99.99</p>
<ol start="2"><li>sin()函数</li></ol>
<p>sin()函数用于计算一个角度的正弦值,其参数为一个弧度值,函数返回一个浮点型值。</p>
<p>例子:</p>
<pre class="brush:cpp;toolbar:false;">#include <iostream>
#include <cmath>
using namespace std;
int main()
{
double radian = 0.5236;
double sin_value = sin(radian);
cout <p>输出结果:</p>
<p>sin(30) = 0.5</p>
<ol start="3"><li>pow()函数</li></ol>
<p>pow()函数用于计算一个数的任意次幂,其参数为两个双精度浮点型数,一个为底数,一个为指数,函数返回一个双精度浮点型值。</p>
<p>例子:</p>
<pre class="brush:cpp;toolbar:false;">#include <iostream>
#include <cmath>
using namespace std;
int main()
{
double base = 2;
double exponent = 5;
double pow_value = pow(base, exponent);
cout <p>输出结果:</p>
<p>2的5次幂为:32</p>
<p>二、complex函数库</p>
<p>complex函数库用于进行复数的数学计算,包含了诸如复数乘法、复数加法、实部、虚部等常用的函数。</p>
<p>使用complex函数库需要在程序开头添加#include <complex>,下面介绍部分常用函数:</complex></p>
<ol><li>complex()函数</li></ol>
<p>complex()函数用于返回一个复数类型的值,其参数为两个(可选一个)双精度浮点型数,第一个值代表复数的实部,第二个为虚部。</p>
<p>例子:</p>
<pre class="brush:cpp;toolbar:false;">#include <iostream>
#include <complex>
using namespace std;
int main()
{
complex<double> c1 (1,2);
cout <p>输出结果:</p>
<p>c1 = (1,2)</p>
<ol start="2"><li>norm()函数</li></ol>
<p>norm()函数用于计算一个复数的模的平方,其参数为一个复数类型的值,函数返回一个双精度浮点型值。</p>
<p>例子:</p>
<pre class="brush:cpp;toolbar:false;">#include <iostream>
#include <complex>
using namespace std;
int main()
{
complex<double> c1 (3,4);
double norm_value = norm(c1);
cout <p>输出结果:</p>
<p>The square of the norm of (3,4) is 25</p><div class="aritcle_card flexRow artxards">
<div class="artcardd flexRow">
<a class="aritcle_card_img" rel="nofollow" href="/xiazai/gongju/2823" title="C++14"><img
src="https://img.php.cn/upload/manual/001/431/639/6ac8b33c327c4749.png" alt="C++14" onerror="this.onerror='';this.src='/static/lhimages/moren/morentu.png'" ></a>
<div class="aritcle_card_info flexColumn">
<a rel="nofollow" href="/xiazai/gongju/2823" title="C++14" class="overflowclass">C++14</a>
<p class="overflowclass">C++14 对 C++11 的修正与增强版本,适合旧系统维护和较老工具链兼容。</p>
</div>
<a rel="nofollow" href="/xiazai/gongju/2823" title="C++14" class="aritcle_card_btn flexRow flexcenter"><b></b><span>下载</span>
</a>
</div>
</div>
<ol start="3"><li>polar()函数</li></ol>
<p>polar()函数用于将一个极坐标下的复数转为常规的复数形式,其参数为两个双精度浮点型数,第一个为模,第二个为相位角,函数返回一个复数类型的值。</p>
<p>例子:</p>
<pre class="brush:cpp;toolbar:false;">#include <iostream>
#include <complex>
using namespace std;
int main()
{
double radius = 5;
double phase = 1.0472; //约等于60度
complex<double> c1 = polar(radius, phase);
cout <p>输出结果:</p>
<p>The complex number is (2.5, 4.33013)</p>
<p>三、random函数库</p>
<p>random函数库可用于生成各种不同类型的随机数,包括整型、实型、布尔型、字符型等。</p>
<p>使用random函数库需要在程序开头添加#include <random>,下面介绍部分常用函数:</random></p>
<ol><li>rand()函数</li></ol>
<p>rand()函数用于生成一个介于0与RAND_MAX之间的随机整数值,其中RAND_MAX是C++标准库中的一个常数,通常情况下等于32767。</p>
<p>例子:</p>
<pre class="brush:cpp;toolbar:false;">#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main()
{
srand(time(NULL)); //设置种子
for(int i = 0; i <p>输出结果:</p>
<p>Random number 0: 1804289383</p>
<p>Random number 1: 846930886</p>
<p>Random number 2: 1681692777</p>
<p>Random number 3: 1714636915</p>
<p>Random number 4: 1957747793</p>
<ol start="2"><li>uniform_real_distribution()函数</li></ol>
<p>uniform_real_distribution()函数用于生成一个介于指定范围之间的随机实数值,其参数为两个双精度浮点型数,其返回一个双精度浮点型随机值。</p>
<p>例子:</p>
<pre class="brush:cpp;toolbar:false;">#include <iostream>
#include <random>
using namespace std;
int main()
{
random_device rd;
mt19937 gen(rd());
uniform_real_distribution distribution(-1, 1); //生成[-1, 1)范围内的随机实数
for(int i = 0; i <p>输出结果:</p>
<p>Random number 0: 0.156381</p>
<p>Random number 1: -0.868275</p>
<p>Random number 2: -0.648533</p>
<p>Random number 3: -0.904021</p>
<p>Random number 4: -0.285259</p>
<p>总结:</p>
<p>cmath函数库、complex函数库和random函数库中含有许多常用的数学计算函数,使用这些函数库和函数能够更加高效地进行各种数学运算。本文介绍的只是常用函数库和函数,并不是全部,读者可以根据需要自行参考相关文献来学习对应的函数使用方法。</p></random></iostream>
C++免费学习笔记(深入):立即使用
在学习笔记中,你将探索 C++ 的入门与实战技巧!










