编一个程序输出一个数的正弦值,为什么输入什么数结果都是-0.89982,我哪儿错了吗求高手指点一下

/*计算一个数的正弦值。*/#include<stdio.h>#include<math.h>intmain(){inta;floatx;/*定义x为浮点型变量*/sca... /*计算一个数的正弦值。*/
#include<stdio.h>
#include<math.h>
int main()
{
int a;
float x;/*定义x为浮点型变量*/
scanf("请输入一个数;%d",&a);
x=sin(a);/*调用sin函数*/
printf("%f\n",x);/*调用printf函数,输出x的值*/
}
展开
 我来答
一口没水的枯井
2015-07-13 · TA获得超过2988个赞
知道小有建树答主
回答量:473
采纳率:100%
帮助的人:160万
展开全部
1 错误在于不熟悉scanf的用法
2 比如要计算sin(120)的值,即a是120
则要输入 请输入一个数;120
才会对应输出 sin(120)的值
3 建议先使用printf再使用scanf
我喜欢看火影ed
2015-07-12 · TA获得超过880个赞
知道小有建树答主
回答量:713
采纳率:76%
帮助的人:420万
展开全部
不会呀?在我这里输入什么数都是-0.998922耶!哈哈!
因为sin()的参数,要求是double型的。
double __cdecl sin(double);
你把int a;改成double a;或者float a;就行了。
追问
按你说的改了,但是现在输什么数都是0.725436。。。醉了
追答
一直没发现把要输出的字给写到scanf()里了:
scanf("请输入一个数;%d",&a);

改成
printf("请输入一个数;\n");
scanf("%lf",&a);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2017-12-31
展开全部
printf和scanf换个位置
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式