cmath库
一、角度制与弧度制
GESP7级对三角函数的考查,核心易错点是C++的cmath库中所有三角函数(sin/cos)的参数均为弧度制,而非我们常用的角度制,考试中频繁考查该转换逻辑,也是判断题的高频挖坑点。
- 转换公式:弧度 = 角度 / 180 × π ; 角度 = 弧度 * 180 / π ; (题目中通常用3.14/3.1415926近似表示π)
- 易错提醒:直接将角度值(如30、60、90)传入sin/cos函数,结果会与预期相差甚远(如sin(90)并非1.0,而是sin(90弧度)的近似值)。
二、cmath库高频考查函数
本次考点涉及的cmath库函数均为GESP7级常考类型,包括三角函数、对数函数、指数函数、幂函数,需掌握函数参数、返回值类型及核心特性,以下为逐一梳理:
(一)三角函数:sin()、cos()
- 参数:double类型,必须为弧度值;
- 返回值:double类型,值域sin/cos均为[-1,1];
- 核心恒等式:sin²x + cos²x = 1(题目中考查该恒等式的数值计算,因浮点数精度问题,计算结果可能近似为1,而非严格等于1);
- 常考值:若传入正确弧度值,sin(π/2)=1.0、cos(π/3)=0.5、sin(π/6)=0.5(对应角度90°、60°、30°)。
(二)对数函数:log()、log10()、log2()
对数函数是选择题+判断题的双高频考点,需严格区分不同对数的底数,及返回值类型:
- log():自然对数,以e(约2.71828) 为底,如log(8)是计算ln8,log(256)=ln256≈5.545、log(128)=ln128≈4.852(判断题中若说其值为8.0/7.0均为错误);
- log10():常用对数,以10为底,如log10(100)=2.0;
- log2():以2为底的对数,如log2(32)=5.0;
- 共性:返回值均为double类型(即使结果为整数,如5.0,也非int类型,判断题高频挖坑点);参数均为大于0的double类型。
(三)指数函数:exp()
- 功能:计算自然常数e的x次幂,即exp(x) = e^x;
- 参数/返回值:均为double类型,如exp(2)=e²≈7.389,强制转换为int类型后结果为7;
- 常用恒等式:log(exp(x)) = x(x>0),因log是自然对数,与exp()互为逆运算。
(四)幂函数:pow()
- 功能:计算pow(a,b) = a^b,如pow(10,3)=10³=1000.0;
- 参数/返回值:均为double类型,即使计算结果为整数(如1000.0),返回值也非int类型,是判断题的高频易错点。
(五)函数共性总结
所有上述cmath库函数的返回值均为double类型,即使计算结果为整数(如log2(32)=5.0、pow(10,3)=1000.0),也不会自动转换为int类型,考试中判断题常以此挖坑;若需得到int类型结果,需手动进行强制类型转换(如(int)exp(2)、(int)log(8))。
三、数论基础考点
本次考查涉及2个数论核心概念,均以判断题形式出现,为基础记忆型考点,无需复杂计算,只需掌握核心定义与特性:
(一)唯一分解定理(算术基本定理)
- 核心定义:每个大于1的自然数都可以唯一地分解成若干个素数的乘积(素数因子的顺序不同不视为不同分解);
- 考试易错点:判断题中若提及“对自然数n进行质因数分解的时间复杂度为O(logn)”,该表述为错误,质因数分解的时间复杂度并非简单的O(logn),需注意该挖坑点。
(二)素数筛法:埃氏筛法与欧拉筛法
- 核心思想:均为通过“筛除合数”生成素数表的经典算法;
- 复杂度对比:埃氏筛法的时间复杂度为O(nloglogn),欧拉筛法(线性筛)的时间复杂度为O(n),欧拉筛法的时间复杂度更低(该表述为正确,考试常考二者复杂度对比)。
四、高频表达式特性判断
考试中常以判断题/选择题形式考查函数组合表达式的结果,需掌握以下核心结论:
- sin(x)/x:x>0时,结果不一定大于0(sinx值域为[-1,1],当x∈(π,2π)时,sinx为负,结果为负);
- exp(x)-x:x>0时,exp(x)增长远快于一次函数x,结果一定大于0;
- log(x)-x:x>0时,logx(自然/常用对数)增长远慢于x,结果一定小于0;
- x²-x:x>0时,当0<x<1时,结果小于0,并非一定大于0;
- log(exp(x))>log10(x):x为正的double类型时,log(exp(x))=x,而x>0时x一定大于log10(x)(log10(x)仅当x>10时才大于1,远小于x),该表述为正确。
评论已关闭