当前位置: 代码迷 >> C语言 >> 这是个求sin(x)的程序,但运行不出
  详细解决方案

这是个求sin(x)的程序,但运行不出

热度:452   发布时间:2006-11-25 09:35:17.0
这是个求sin(x)的程序,但运行不出

这是一个求Sin(x)的程序:
#include<stdio.h>
#include<math.h>
float sin(float x)
{
float feizi=x,m,s=1,sum=x;
int feimu=1,r;
for((r=3)&&(feizi=x*x*x);;(r=r+2)&&(feizi=feizi*x*x))
{
feimu=feimu*r*(r-1);
s=-s;
m=feizi/feimu*s;
while(fabs(m)>=1e-6)
sum=sum+m;
}
return sum;
}

void main()
{
float item,a;
scanf("%f",&a);
item=sin(a);
printf("%f\n",item);

}

搜索更多相关的解决方案: sin  运行  

----------------解决方案--------------------------------------------------------
for((r=3)&&(feizi=x*x*x);;(r=r+2)&&(feizi=feizi*x*x))
这是什么?无限循环?
----------------解决方案--------------------------------------------------------
建议LZ写一下你的思路

sinx=? 有公式吗

[此贴子已经被作者于2006-11-25 11:12:19编辑过]


----------------解决方案--------------------------------------------------------
sina(x)公式
sinx=x-(1/3!)*x*x*x+(1/5!)*x*x*x*x*x-...
----------------解决方案--------------------------------------------------------
以下是引用angeloc在2006-11-25 11:02:58的发言:
for((r=3)&&(feizi=x*x*x);;(r=r+2)&&(feizi=feizi*x*x))
这是什么?无限循环?

我问的这个问题你解决了么?为什么这样写?


----------------解决方案--------------------------------------------------------
以下是引用小笑孩在2006-11-25 9:35:17的发言:

这是一个求Sin(x)的程序:
#include<stdio.h>
#include<math.h>
float sin(float x) // sin是头文件 math.h 中的求正弦的函数,不能同名
{
float feizi=x,m,s=1,sum=x;
int feimu=1,r;
for((r=3)&&(feizi=x*x*x);;(r=r+2)&&(feizi=feizi*x*x)) //有问题,没有结束判断
{
feimu=feimu*r*(r-1);
s=-s;
m=feizi/feimu*s;
while(fabs(m)>=1e-6)
sum=sum+m;
}
return sum;
}

void main()
{
float item,a;
scanf("%f",&a);
item=sin(a);
printf("%f\n",item);

}


----------------解决方案--------------------------------------------------------

以下是引用perfect在2006-11-25 12:32:13的发言:

for((r=3)&&(feizi=x*x*x);;(r=r+2)&&(feizi=feizi*x*x)) //有问题,没有结束判断
这的确是个无限循环
while(fabs(m)>=1e-6)不是个判断结束吗?


----------------解决方案--------------------------------------------------------
while(fabs(m)>=1e-6)不是结束的标志吗?


----------------解决方案--------------------------------------------------------

while结束了关FOR什么事?你应该从最基础语法补了


----------------解决方案--------------------------------------------------------
while结束了关FOR什么事?你应该从最基础语法补了

----------------解决方案--------------------------------------------------------
  相关解决方案