当前位置: 首页 > news >正文

C语言从头学59——学习头文件math.h(二)

       继续学习头文件<math.h>,编号接续前文。
六、三角函数
       math.h中的三角函数包括:
       acos():反余弦,参数范围-1至+1,返回值double类型:0~PI
       asin():反正弦,参数范围-1至+1,返回值double类型:-PI/2~PI/2
       atan():反正切,参数范围-1至+1,返回值double类型:-PI/4~PI/4
       atan2():反正切(这个函数需要两个参数对边和邻边,且这两个边还放在十字坐标系中,因此结果会反应出在哪个象限)
       cos():余弦,参数为弧度值,范围0~2*PI,返回值double类型:-1~+1
       sin():正弦,参数为弧度值,范围0~2*PI,返回值double类型:-1~+1
       tan():正切,参数为弧度值,范围0~2*PI(不等于PI/2、3/4PI),返回值double类型:0~无穷大
       以上函数使用起来很简单,注意参数范围即可。
七、指数函数和对数函数
       exp():计算e的x次乘方即e^x;返回值double类型
       exp2():计算2的乘方,即2^x;返回值double类型
       log():计算以e为底的自然对数;返回值double类型
       log2():计算以2为底的对数;返回值double类型
       log10():计算以10为底的对数;返回值double类型
八、函数frexp()
       功能:将参数分解成浮点数*以2为底的指数部分(即x*2^n)
       使用格式:frexp(参1,参2);
          参1:待分解的浮点数
          参2:int*指针(指向2的n次方的n)
        返回值:double类型(即分解成的浮点数)
        说明:如果参1为0,则返回值及参2均未0
九、函数ilogb()
       功能:返回参数的指数部分(底数为FLT_RADIX,值一般是2)
       使用格式:ilogb(参1);
          参1:double类型的数
       返回值:返回int类型的指数部分
十、函数ldexp()
       功能:将一个double类型的数x与2的整型指数n合成一个double数,即将x*2^n形式的数合成一个double数。
       使用格式:ldexp(参1,参2);
         参1:double类型的浮点数(x*2^n中的x)
         参2:int类型的指数部分(x*2^n中的n)
       返回值:合成的double类型结果

十一、实验程序

#include<stdio.h>
#include<math.h>
#define PI 3.1415926
int main(void)
{
//实验三角函数float a = sinf(30 * PI / 180);printf("30°的sin值:%f\n", a);//运行结果:30°的sin值:0.500000float b = asinf(0.5)*180/PI;printf("0.5的asin值(度):%f\n",b);//运行结果:0.5的asin值(度):30.000000
//实验指数函数和对数函数double e = exp(1);printf("e的值等于:%f\n", e);//运行结果:e的值等于:2.718282double x = log10(2);printf("以10为底2的对数:%f\n", x);//运行结果:以10为底2的对数:0.301030
//实验函数frexp()double y= 22222.22;int n = 0;double fr = frexp(y, &n);printf("22222.22分解结果:%f*2^%d\n", fr, n);//运行结果:22222.22分解结果:0.678168*2^15
//实验函数ilogb()double z = 1025;int c = ilogb(z);printf("1024以2为底的指数:%d\n", c);
//实验函数ldexpdouble res = ldexp(2.32, 8); //函数2.32*2^8计算出double结果printf("2.32*2^8=%f\n", res);//运行结果:2.32*2^8=593.920000getchar();return 0;
}

http://www.lryc.cn/news/435957.html

相关文章:

  • Leetcode 3283. Maximum Number of Moves to Kill All Pawns
  • 智能物流新“黑神话”:各位“天命人”,这份行业应用锦集请收下!
  • SpringSecurity原理解析(五):HttpSecurity 类处理流程
  • C++系列-匿名对象
  • tofixed和math.round什么区别
  • OPENAIGC开发者大赛高校组金奖 | 基于混合大语言模型与多模态的全过程通用AI Agent
  • MySql批量迁移数据库
  • 一、selenium自动化简介selenium工具集
  • CCF推荐B类会议和期刊总结:(计算机网络领域)
  • [Web安全 网络安全]-文件包含漏洞
  • 使用soui4实现一个拾色器
  • Thinkphp5 + Swoole实现邮箱异步通知
  • LLM - 理解 多模态大语言模型 (MLLM) 的预训练与相关技术 (三)
  • 工具篇之Joda-Time
  • 架构师应该懂得东西,软考应该具备的
  • 图论篇--代码随想录算法训练营第五十一天打卡| 99. 岛屿数量(深搜版),99. 岛屿数量(广搜版),100. 岛屿的最大面积
  • 什么是API网关(API Gateway)?
  • 对话:LLC磁集成能否成为充电桩模块电源常态产品?
  • 基于SSM的二手物品交易管理系统的设计与实现 (含源码+sql+视频导入教程+文档+PPT)
  • 视觉语言模型中的人脸社会感知
  • JAVA学习-练习试用Java实现“最小覆盖子串”
  • 关于axios同步获取数据的问题
  • java-在ANTLR中,如何从java文件中提取类名和方法名0.1.8
  • 十大护眼灯钢琴灯品牌是智商税吗?十大钢琴灯品牌排行榜
  • 搜维尔科技:CyberGlove将实时捕捉运动信号和触觉反馈,将其重新定位到人形机器人进行驱动
  • 数据结构:堆的算法
  • python画图|3D直方图基础教程
  • C语言中的函数,实参,形参,递归
  • ICM20948 DMP代码详解(15)
  • NC 和为K的连续子数组