重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
包含头文件 math.h
创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都做网站、成都网站设计、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的新余网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
反3角函数有 acos(double),asin(double),atan(double),atan(double,double),
返回值 double 型,弧度值。转角度要 *180.0/3.1416
例如:
#include stdio.h
#includestdlib.h
#includemath.h
int main()
{
double x=0.5;
printf("acos=%.2lf degrees\n",acos(x) * 180.0/3.1416);
printf("asin=%.2lf degrees\n",asin(x) * 180.0/3.1416);
printf("atan=%.2lf degrees\n",atan(x) * 180.0/3.1416);
printf("atan2=%.2lf degrees\n",atan2(1.0,2.0) * 180.0/3.1416);
return 0;
}
用自带的函数库
#include stdio.h
#include math.h
#define M_PI 3.14159265358979323846
int main(void)
{
printf("%.4f\n", sin(M_PI / 2));
printf("%.4f\n", cos(M_PI / 3));
printf("%.4f\n", asin(1.00));
printf("%.4f\n", acos(0.50));
printf("%.4f\n", tan(M_PI / 4));
printf("%.4f\n", atan(1.00));
return 0;
}
包含头文件math.h即可:#includemath.h
名称和函数定义如下:
反余弦函数:acos()
double acos(double x)
反正弦函数:asin()
double asin(double x)
反正切函数:atan()
double atan(double x)
Q1=(int)acos((abs(xe-x)/r));
Q2=(int)acos((abs(x-x0))/r);
改成
Q1=(int)acos((fabs(xe-x)/r));
Q2=(int)acos((fabs(x-x0))/r);
因为原来的acos里面的 都是整数相除,结果是一个整数,发生截断了。fabls返回的是double,再相除就没有问题。
double 改成float
我系统里是asin,不是arcsin
其它以无问题,运行良好而正确。
double 与float计算没太大区别,输入输出有区别。printf和scanf函数根据"%f"会把后面的参数看成float.
printf,scanf没有认double的能力。
这是个程序,具体请看~
#include iostream
#include cmath
#define pi 3.14159265
using namespace std;
int main()
{
int a = 1;
cout"asin(1) = "asin(a)*180/piendl;
cout"acos(1) = "acos(a)*180/piendl;
cout"atan(1) = "atan(a)*180/piendl;
}