English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
A função acos() retorna o valor do arco-cosseno de um número representado em radianos.
A função acos() aceita um único parâmetro (1≥x≥-1),e retorna o valor do arco-cosseno em radianos.
A função acos() está incluída no arquivo de cabeçalho <math.h>.
double acos(double x);
要查找类型为int,float或long double的反余弦,可以使用强制转换运算符将类型显式转换为double。
int x = 0; double result; result = acos(double(x));
另外,C99中引入了两个函数acosf()和acosl(),分别专门用于float类型和long double类型。
float acosf(float x); long double acosl(long double x);
acos()函数采用[-1,+1]范围内的单个参数。这是因为余弦值在1到-1之间。
参数 | 描述 |
---|---|
double 值 | 需要。 一个介于-1和+1之间的双精度值。 |
acos()函数返回以弧度为单位的[0.0,π]范围内的值。 如果传递给acos()函数的参数小于-1或大于1,则该函数返回NaN(不是数字)。
参数(x) | 返回值 |
---|---|
x = [-1, +1] | 弧度在[0, π] 范围内 |
-1 > x ou x > 1 | NaN (不是数字) |
#include <stdio.h> #include <math.h> int main() { //定义了常量 PI const double PI = 3.1415926; double x, result; x = -0.5; result = acos(x); printf("Cosseno de (%.2f);2f) 反余弦值 = %.2f.2lf 弧度\n", x, result); //将弧度转换成角度 result = acos(x)*180/PI; printf("Cosseno de (%.2f);2f) 反余弦值 = %.2f.2lf 度\n", x, result); //参数不在范围内 x = 1.2; result = acos(x); printf("Cosino inverso de (%.2f);2f) = %.2f.2lf", x, result); return 0; }
Resultados de Saída
cos(-0.50) 反余弦值 = 2.09 Radianos cos(-0.50) 反余弦值 = 120.00 度 cos(1.20) 反余弦值 = nan
#include <stdio.h> #include <math.h> int main() { float fx, facosx; long double lx, ldacosx; //float 类型的反余弦 fx = -0.505405; facosx = acosf(fx); //long double 类型的反余弦 lx = -0.50540593; ldacosx = acosf(lx); printf("acosf(x) = %f radianos\n", facosx); printf("acosl(x) = %Lf radianos", ldacosx); return 0; }
Resultados de Saída
acosf(x) = 2.100648 Radianos acosl(x) = 2.100649 Radianos