math.h里的三角函數(shù)用的單位是弧度,你貌似錯在這里。 ? 答案補充 Example
十載建站經(jīng)驗, 成都做網(wǎng)站、網(wǎng)站制作客戶的見證與正確選擇。成都創(chuàng)新互聯(lián)公司提供完善的營銷型網(wǎng)頁建站明細報價表。后期開發(fā)更加便捷高效,我們致力于追求更美、更快、更規(guī)范。
/* SINCOS.C: This program displays the sine, hyperbolic
* sine, cosine, and hyperbolic cosine of pi / 2.
*/
#include math.h
#include stdio.h
void main( void )
{
double pi = 3.1415926535;
double x, y;
x = pi / 2;
y = sin( x );
printf( "sin( %f ) = %f\n", x, y );
y = sinh( x );
printf( "sinh( %f ) = %f\n",x, y );
y = cos( x );
printf( "cos( %f ) = %f\n", x, y );
y = cosh( x );
printf( "cosh( %f ) = %f\n",x, y );
} ?答案補充 Output
sin( 1.570796 ) = 1.000000
sinh( 1.570796 ) = 2.301299
cos( 1.570796 ) = 0.000000
cosh( 1.570796 ) = 2.509178
Parameter
x
Angle in radians
在調(diào)用三角函數(shù)之前先把角度換算成弧度,調(diào)用反三角函數(shù)之后把弧度換算成角度就可以了.可以用 pi = 4.0 * atan(1) 算出pi,用 a = h * 180.0/pi 算角度,用 h = a * pi /180 算弧度.
在 C 語言中,使用 math.h 框架庫(或頭文件)來使用三角函數(shù)的計算。該庫將給出一些常見的三角函數(shù),包括 sin()、cos()、tan()、asin()、acos()、atan() 等。
下面是使用 sin() 函數(shù)計算正弦值的代碼示例:
?Copy code
#include stdio.h
#include math.h
int main() {
double angleDegree = 30; // 角度為30度
double angleRad = angleDegree * M_PI / 180.0; // 將角度轉(zhuǎn)換為弧度
double sinValue = sin(angleRad); // 計算正弦值
printf("正弦值為: %lf\n", sinValue);
return 0;
}
在這個程序中,通過 #include math.h 包含數(shù)學庫,使用 double 類型的變量 angleDegree 存儲角度,將其轉(zhuǎn)換為弧度,然后使用 sin() 函數(shù)計算它的正弦值和打印輸出。請注意,使用 sin() 函數(shù)時,其參數(shù)必須是弧度(而不是角度),因此在計算正弦值之前,必須將角度轉(zhuǎn)換為弧度。
使用 cos() 函數(shù)和 tan() 函數(shù)計算余弦和正切值同樣簡單。例如:
?Copy code
double cosValue = cos(angleRad); // 計算余弦值
double tanValue = tan(angleRad); // 計算正切值
請注意,在 C 語言中,三角函數(shù)的參數(shù)以弧度為單位。因此,在計算函數(shù)之前,必須將角度轉(zhuǎn)換為弧度。通常使用以下公式將角度轉(zhuǎn)換為弧度:
?Copy code
angleRad = angleDegree * M_PI / 180.0;
以上 M_PI 常量是 π 的值,其通常在 math.h 框架庫中定義。
調(diào)用math.h中的三角函數(shù),需要將角度值變換為弧度值,代碼如下:
#includestdio.h
#includemath.h
#define PI 3.14159265359
int main()
{
float st,a;
scanf("%f",st);
a = st * PI/180;
printf("sin(st)=%f\n", sin(a));
printf("cos(st)=%f\n", cos(a));
return 0;
}