⑴ c語言 求sin值
首先,你的測試輸入和測試輸出的數據是對應不上的,你寫錯信息了!
輸入 3.1415026, 3 的時候,輸出才是 -0.07522 。
好了,正確的參考代碼如下:
#include<stdio.h>
doublepower(doublex,intn);//計算乘方的函數
doublefact(intn);//計算階乘的函數
intmain(intargc,charconst*argv[])
{
doublex,s;
intn;
intsign=1;//正負號開關變數,初始狀態為正
printf("Pleaseinputadecimalnumberx,apostiveintnumbern: ");
scanf("%lf%d",&x,&n);
for(inti=0;i<=n;i++)
{
s+=sign*power(x,2*i+1)/fact(2*i+1);
sign=-sign;
}
printf("x=%g,n=%d,s=%.5lf ",x,n,s);
return0;
}
//計算x^n
doublepower(doublex,intn)
{
doublep=1;
//這樣的循環條件,很簡潔。因為函數傳入的是形參,也不會對main的變數造成影響。
for(;n--;)
{
p*=x;
}
returnp;
}
//計算n!
doublefact(intn)
{
doublef=1;
//這樣的循環條件,很簡潔。因為函數傳入的是形參,也不會對main的變數造成影響。
for(;n;)
{
f*=n--;
}
returnf;
}
測試截圖:(分別測試了角度為 180度、90度、45度的弧度值)
⑵ 用C語言程序算sinX的值
程序有幾個問題:
1.long double型數據輸入輸出都要用%lf,而你都用的是%f。
2. if(i=1)此處應該為(x==1)
3.while(pow(x,j)/p<1e-5);此處應該為:pow(x,j)/p>1e-5
目前就發現這么多錯誤,但是答案貌似不對。你再檢查檢查。
⑶ c語言中sin怎麼輸入
輸入一個double類型的數,調用c標准庫中的sin函數即可。
函數原型:double
sin(double
x);
功能:
函數用來求給定值的正弦值
頭文件:#include
<math.h>
參數:給定的值(弧度)。
返回值:返回-1
至1
之間的計算結果。
示例:
#include<stdio.h>
#include<math.h>
int main()
{
const double PI = 3.1415926;
double d;
scanf("%lf", &d);
double result = sin(d*PI/180)+cos(d*PI/180);
printf("%f\n",result);
return 0;
}
⑷ c語言 計算sin
sin函數寫錯了,應該是: double sin...... { if... return 0; else { ... ... return sin(x,xx); } } 不要後面那個return z了
⑸ c語言 計算sin
sin函數寫錯了,應該是:
double sin......
{
if...
return 0;
else
{
...
...
return sin(x,xx);
}
}
不要後面那個return z了
⑹ 怎樣用c語言編寫一個程序用來輸出正弦函數值
首先:程序應該這樣改!
#include
#include
main()
{
double
n;
double
b,c;
scanf("%lf",&n);
b=sin(n);
c=cos(n);
printf("%.2lf\n%.2lf",b,c);
return
0;
}
其次,這里的n是弧度值,你說的90度應該輸入的是pi/2,而不是90,如果希望輸入90的話,那就這樣改!
#include
#include
main()
{
int
s;
double
n,b,c;
scanf("%d",&s);
n=3.1415926*(s/180.0);
b=sin(n);
c=cos(n);
printf("%.2lf\n%.2lf",b,c);
return
0;
}
⑺ c語言中sin怎麼輸入
C語言sin()用來計算參數x 的正玄值,然後將結果返回。返回-1 至1 之間的計算結果。
例子:
#include <math.h>
main(){
double answer = sin(0.5);
printf("sin(0.5) = %f ", answer);
}
執行
sin(0.5) = 0.479426
C語言sin():
sin()原型:double sin(double x)
sin()角度與弧度:
π=180°
1°=π/180
1(rad)=180/π
角度轉弧度:用角度乘以π/180
弧度轉角度:用弧度乘以180/π,或者用rtod()函數
(7)sin值c語言擴展閱讀:
與sin相似的acos函數
函數名: acos
功 能:計算並返回arccos(x)值、要求-1<=X<=1
函數與形參類型:
double acos(x)
double x;
程序例:
#include <stdio.h>
#include <math.h> int main(void)
{
double result;
double x = 0.5; result = acos(x);
printf("The arc cosine of %lf is %lf ", x, result);
return 0;
}
⑻ 用C語言求正弦值
1、C語言中要編寫sin函數,實質上要利用sin的泰勒公式,然後根據泰勒公式,將其中的每一項進行分解,最後用循環,累加計算出最終結果。
2、下面用for循環實現sin的演算法,程序代碼如下:
#include<stdio.h>
#include<math.h>
voidmain()
{
inti;
floatx,sum,a,b;//sum代表和,a為分子,b為分母
chars;
printf("pleaseinputx");
scanf("%f",&x);
s=1;
sum=0;
a=x;//分母賦初值
b=1;//分子賦初值
for(i=1;a/b>=1e-6;i++)
{
sum=sum+s*a/b;//累加一項
a=a*x*x;//求下一項分子
b=b*2*i*(2*i+1);//求下一項分母
s*=-1;
}
printf("sum=%f
",sum);
}
3、 關於上述程序的幾點說明:上述程序的計算結果精確到小數點後六位;上述程序運用了sin的泰勒展開式 sin x=x-x^3/3!+x^5/5! ...... ,程序中將sin泰勒公式中的每一項拆成了分子,分母以及每一項前的符號這三項,以便於每一項的累加。