c++的一个角度和弧度转换的一个程序,怎么不能正确转换?

#include<iostream.h>constdoublepi=3.1415926535;doubleradtoang(double){doubleang,rad;a... #include<iostream.h>
const double pi=3.1415926535;
double radtoang (double)
{
double ang,rad;
ang=rad*180/pi;
return ang;
}

double angtorad (double)
{
double ang,rad;
int a,b;
double c;
a=int(ang);
b=int((ang-int(ang))*100);
c=ang-a-b;
rad=(a*pi/180)+(b*pi/180/60)+(c*pi/180/60/60);
return rad;
}

main()
{
int option;
cout<<"angtorad请输入1,radtoang请输入2"<<'\n';
cin>>option;
switch (option)
{
case 1:
cout<<"请输入一个角度x:"<<'\n';
double x,rad;
cin>>x;
angtorad(x);
cout<<"rad="<<rad<<endl;
return rad;
break;
case 2:
cout<<"请输入一个弧度y:"<<'\n';
double y,ang;
cin>>y;
radtoang(y);
cout<<"ang="<<ang<<endl;
return ang;
}
}
求大神指教,调试了,没错误,但是转换角度的时候,不鞥正确抓换( 角度的输入方式如38度56秒24.5分,应该输入38.56245),哪里错了?
展开
 我来答
陈宗权8d804
推荐于2017-10-04 · TA获得超过3766个赞
知道小有建树答主
回答量:1159
采纳率:0%
帮助的人:967万
展开全部
角度跟弧度的关系是一个圆周为360角度等于2π弧度,因此换算关系就是:
1角度=π/180弧度
1弧度=180/π角度
由此设计角度和弧度的转换函数。其中用到π是一个无理数,可以根据需要截取适当的精度,比如:
#define PI 3.14159265
角度转换成弧度,把角度乘以PI/180就可以了,角度和转换成的弧度都可能是小数。
double DegToRad(double deg)
{
return deg*PI/180;
}
弧度转换成角度,把弧度乘以180/PI就可以了,弧度和转换成的角度都可能是小数。
double RadToDeg(double rad)
{
return rad*180/PI;
}
机熙星0gqeaa
推荐于2017-09-17
知道答主
回答量:14
采纳率:0%
帮助的人:19万
展开全部
你的参数都没有传进转换函数里面去,照这样改一下:
double radtoang (double rad)
{
double ang;
......

double angtorad (double ang)
{
double rad;
......
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式