c++中math中PI怎么用?

例如:已加入头文件:#include<math.h>doublec=PI*6;这句话提示错误,未声明的标识符而doubled=pow(3.456767,2);这句话就是对... 例如:已加入头文件:#include <math.h>
double c=PI*6;这句话提示错误,未声明的标识符
而 double d=pow(3.456767,2);这句话就是对的为什么?
展开
 我来答
小澈Wataru
推荐于2019-08-02 · TA获得超过3240个赞
知道答主
回答量:73
采纳率:0%
帮助的人:3.9万
展开全部

从math.h的源文件中可以看到,需要首先在#include<math.h>前定义#define _MATH_DEFINES_DEFINED,才可以使用一些数学常量,并且可以看到pi的数学符号是M_PI。

因此,我们需要这样使用PI这个常数:

扩展资料:

从math.h的源文件还看到很多其他的数学常数,比如ln2,ln10,lge,lg2等等。这些都可以使用特定的数学符号来表示这些常量。

math.h中使用了条件编译指令# if defined...,在图一的第一行。

这里便是预处理指令,它是以#号开头的代码行。#号必须是该行除了任何空白字符外的第一个字符。#后是指令关键字,在关键字和#号之间允许存在任意个数的空白字符。整行语句构成了一条预处理指令,该指令将在编译器进行编译之前对源代码做某些转换。

下面是部分预处理指令:

#空指令,无任何效果

#include包含一个源代码文件

#define定义宏

#undef取消已定义的宏

#if如果给定条件为真,则编译下面代码

#ifdef如果宏已经定义,则编译下面代码

#ifndef如果宏没有定义,则编译下面代码

#elif如果前面的#if给定条件不为真,当前条件为真,则编译下面代码

#endif结束一个#if……#else条件编译块

#error停止编译并显示错误信息

大野瘦子
高粉答主

推荐于2019-09-23 · 繁杂信息太多,你要学会辨别
知道小有建树答主
回答量:1227
采纳率:100%
帮助的人:32.3万
展开全部

主要是利用利用数学函数中的反三角函数

1、头文件math.h中宏定义的是M_PI

#define M_PI 3.14159265358979323846

2、这是一个在库文件头文件math.h中的定义的宏,实际上就是圆周率π的一个近似值,约等于3.1415

下面是一个求三角函数sin(a)值的一个程序,这里就用到了M_PI这个宏。由于这里的a要求是弧度,所以对于输入的角的度数做了相应的转换。

#include <stdio.h>

#include <math.h>

int main()

{

int degree;

printf("Please input angle degree:\n");fflush(NULL);

scanf("%d",°ree);

printf("sin(%d)=%f\n",degree,sin(M_PI*degree/180));

return 0;

}

因为:头文件math.h中宏定义的是M_PI

扩展资料:

关于上述提到的M_PI

.M_PI 是一个宏定义,圆周率的定义

#define M_PI 3.14159265358979323846 

此宏定义和编译器有关,TC中M_PI宏就定义在<math.h>里面。

但vc的<math.h>中没有了M_PI的宏定义。

常见宏定义:

#include<bits/stdc++.h>

#define _USE_MATH_DEFINES

using namespace std;

int main()

{

cout<<M_PI<<endl;

cout<<M_E<<endl;

return 0;

}   

#if defined(_USE_MATH_DEFINES) && !defined(_MATH_DEFINES_DEFINED)

#define _MATH_DEFINES_DEFINED

#define M_E        2.71828182845904523536

#define M_LOG2E    1.44269504088896340736

#define M_LOG10E   0.434294481903251827651

#define M_LN2      0.693147180559945309417

#define M_LN10     2.30258509299404568402

#define M_PI       3.14159265358979323846

#define M_PI_2     1.57079632679489661923

#define M_PI_4     0.785398163397448309616

#define M_1_PI     0.318309886183790671538

#define M_2_PI     0.636619772367581343076

#define M_2_SQRTPI 1.12837916709551257390

#define M_SQRT2    1.41421356237309504880

#define M_SQRT1_2  0.707106781186547524401

#endif  /* _USE_MATH_DEFINES */

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
千锋教育
2015-12-14 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
展开全部
  头文件math.h中宏定义的是M_PI
#define M_PI 3.14159265358979323846
  C++由于语言本身过度复杂,这甚至使人类难于理解其语义。更为糟糕的是C++的编译系统受到C++的复杂性的影响,非常难于编写,即使能够使用的编译器也存在了大量的问题,这些问题大多难于被发现。
  由于本身的复杂性,复杂的C++程序的正确性相当难于保证。也有人提出不支持多线程的原语等缺陷。不过有如此多的知名人士提出了如此多的缺陷,正说明C++被广泛使用和成功。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tattackor
推荐于2018-02-26 · TA获得超过3.5万个赞
知道大有可为答主
回答量:5083
采纳率:94%
帮助的人:863万
展开全部

1、头文件math.h中宏定义的是M_PI
#define M_PI 3.14159265358979323846


2、这是一个在库文件头文件math.h中的定义的宏。实际上就是圆周率π的一个近似值,约等于3.1415.
下面是一个求三角函数sin(a)值的一个程序,这里就用到了M_PI这个宏。由于这里的a要求是弧度,所以对于输入的角的度数做了相应的转换。

#include <stdio.h>
#include <math.h>
int main()
{
int degree;
printf("Please input angle degree:\n");fflush(NULL);
scanf("%d",°ree);
printf("sin(%d)=%f\n",degree,sin(M_PI*degree/180));
return 0;
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yin138海波
2015-10-10 · TA获得超过133个赞
知道答主
回答量:32
采纳率:100%
帮助的人:12.8万
展开全部
头文件math.h中宏定义的是M_PI
#define M_PI 3.14159265358979323846

VC的 math.h 里有 M_PI 等数学常量,只是要求在 #include <math.h> 前面定义 _USE_MATH_DEFINES 宏:

#include <tchar.h>
#define _USE_MATH_DEFINES
#include <math.h>

int _tmain()
{
return _tprinftf(_T("%lf\n"), M_PI);
}
[以上参考于网络]
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(8)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式