怎样做影视网站不侵权,保定网站设计推荐,湛江定制建站,英文成品网站模板下载csp信奥赛C常用的数学函数详解
在信息学奥林匹克竞赛#xff08;信奥赛#xff09;中#xff0c;C 的 cmath 头文件提供了丰富的数学函数#xff0c;用于高效处理数学运算。以下是常用系统数学函数的详细讲解及汇总表格。 绝对值函数 int abs(int x)#xff1a;返…csp信奥赛C常用的数学函数详解
在信息学奥林匹克竞赛信奥赛中C 的 cmath 头文件提供了丰富的数学函数用于高效处理数学运算。以下是常用系统数学函数的详细讲解及汇总表格。 绝对值函数 int abs(int x)返回整数的绝对值需包含 cstdlib。double fabs(double x)返回浮点数的绝对值。C11 后推荐使用 std::abs(x)支持重载如 int, double。 幂与根 double pow(double base, double exponent)计算 base 的 exponent 次方。double sqrt(double x)返回 x 的平方根x ≥ 0。double cbrt(double x)C11返回立方根。 取整函数 double ceil(double x)向上取整如 ceil(2.3) 3.0。double floor(double x)向下取整如 floor(2.7) 2.0。double round(double x)四舍五入到最接近的整数如 round(2.5) 3.0。 指数与对数 double exp(double x)计算 e^x。double log(double x)自然对数x 0。double log10(double x)以 10 为底的对数。 三角函数参数为弧度 double sin(double x)、double cos(double x)、double tan(double x)。反三角函数asin(x)、acos(x)返回值范围 [-π/2, π/2] 和 [0, π]。double atan2(double y, double x)计算 y/x 的反正切处理所有象限。 其他函数 double fmod(double x, double y)浮点数取模余数符号同 x。double hypot(double x, double y)计算 √(x² y²)。double fmax(double a, double b)、double fmin(...)返回最大/最小值。 汇总表格
函数名功能参数类型返回值类型示例abs(int)整数绝对值intintabs(-5) → 5fabs(double)浮点数绝对值doubledoublefabs(-3.5) → 3.5pow(a, b)计算 a^bdouble, doubledoublepow(2, 3) → 8.0sqrt(x)平方根doubledoublesqrt(16) → 4.0ceil(x)向上取整doubledoubleceil(2.3) → 3.0floor(x)向下取整doubledoublefloor(2.7) → 2.0round(x)四舍五入doubledoubleround(2.5) → 3.0exp(x)计算 e^xdoubledoubleexp(1) → ~2.718log(x)自然对数ln(x)doubledoublelog(7.389) → ~2.0log10(x)以 10 为底的对数doubledoublelog10(100) → 2.0sin(x)正弦函数double弧度doublesin(π/2) → 1.0atan2(y, x)四象限反正切double, doubledoubleatan2(1, 1) → π/4fmod(x, y)浮点取模double, doubledoublefmod(5.5, 2) → 1.5hypot(x, y)计算直角斜边double, doubledoublehypot(3, 4) → 5.0 注意事项
类型匹配如 abs 对整型fabs 对浮点型C11 后可用 std::abs 自动匹配。错误处理sqrt(-1) 返回 NaNlog(0) 返回 -inf。精度问题浮点运算可能存在精度误差比较时建议用极小量如 1e-9。
掌握这些函数能显著提升算法题的编码效率建议结合实践加深理解。 文末彩蛋 点击查看老师的个人主页学习csp信奥赛完整系列课程 https://edu.csdn.net/lecturer/7901