C语言编写sin函数?求教!

我是这样写的:#include"stdio.h"#include"math.h"main(){floatx,a,b;printf("Enternumber:\n");sc... 我是这样写的:
#include "stdio.h"
#include "math.h"
main()
{
float x,a,b;
printf("Enter number:\n");
scanf("%d",&x);
a=sinx;
printf("sinx=%d\n",a);
b=cosx;
printf("cosx=%d\n",b);

}
结果错误,哪位大虾帮我看看,正确的应该怎么写啊?
我是新手刚学,这是老师出的作业。
要求是输出为 sin(***)=*** cos(***)=***
展开
 我来答
mlper_
2015-09-10 · TA获得超过8017个赞
知道大有可为答主
回答量:4863
采纳率:78%
帮助的人:1212万
展开全部
  1. C语言中要编写sin函数,实质上要利用sin的泰勒公式,然后根据泰勒公式,将其中的每一项进行分解,最后用循环,累加计算出最终结果

  2. 下面用for循环实现sin的算法,程序代码如下:

#include<stdio.h>

#include<math.h>

void main()

{

 int  i;

 float  x,sum,a,b;  //sum代表和,a为分子,b为分母

 char s;

 printf("please input x");

 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\n",sum);

}

  3.  关于上述程序的几点说明:上述程序的计算结果精确到小数点后六位;上述程序运用了sin的泰勒展开式 sin x=x-x^3/3!+x^5/5! ...... ,程序中将sin泰勒公式中的每一项拆成了分子,分母以及每一项前的符号这三项,以便于每一项的累加

kanerry
2006-09-17 · TA获得超过869个赞
知道大有可为答主
回答量:3998
采纳率:0%
帮助的人:2525万
展开全部
main()
{
float x,a,b;
printf("Enter number:\n");
scanf("%f",&x);
a=sin(x);
printf("sinx=%.2f\n",a);
b=cos(x);
printf("cosx=%.2f\n",b);

}

这是角度单位,需要换算一下
main()
{
float x,a,b;
printf("Enter number:\n");
scanf("%f",&x);
x=x*3.14/180;
a=sin(x);
printf("sinx=%.2f\n",a);
b=cos(x);
printf("cosx=%.2f\n",b);
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
richardbao2000
2006-09-17 · TA获得超过5342个赞
知道大有可为答主
回答量:4457
采纳率:100%
帮助的人:3870万
展开全部
sin(x)
cos(x)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式