角度与弧度的转换 C语言

编译环境::VS 2019

定义:

角度:从圆心引出两条射线射出,形成一个夹角和夹角正对的一段弧。当弧长正好等于圆周长的360分之一时,两条射线的夹角的大小为1度,如图一所示。(单位: º)

弧度:从圆心引出两条射线射出,形成一个夹角和夹角正对的一段弧。当弧长正好等于圆的半径时,两条射线的夹角大小为1弧度,如图二所示。(单位:rad)

弧度 = 弧长/半径    弧长 = 周长

 圆周长 = πd = 2πr (其中 d 为直径 ,r 为半径),其中  π 为 3.1415926

一 、角度转化为弧度

1. 圆的角度为360°  , 弧长为 2πr  , 根据 弧度 = 弧长 / 半径   ,得圆的弧度为 2π 

2.  由 1 得  360° = 2π (rad) , 故可知 1° = π / 180°

3.  可得出  n° = n * π / 180°

二、弧度转化为角度

1. 由 一 可知  360° = 2π (rad)

2. 即可知 1 rad = 360°  / 2π  = 180° / π 

3. 可得出 n rad =  n *  180° / π

三、 度、分、秒的转换

此处引用:角度的换算(度分秒转化)    (若侵权,即删)

 四 、 代码

1. 弧度转换为角度

#include<stdio.h>
#define pi 3.1415926
int main()
{
	int degree, minute, second;   //  角度值,定义 度,分,秒
	float angle, min, sec;        //  
	float radian;                 //  定义弧度
	scanf_s("%f", &radian);       //  输入弧度值

	angle = radian * 180 / pi;    //  计算角度 , n°= n * 180 / pi
	degree = int(angle);          //  取出度数值

	min = (angle - degree) * 60;  //  计算出"分"
	minute = int(min);

	sec = (min - minute) * 60;    //  计算出"秒"
	second = int(sec);

	printf("%f %d\n",angle,degree);
	printf("%f %d\n", min, minute);
	printf("%f %d\n", sec, second);
	return 0;
}

2. 角度转换为弧度

#include<stdio.h>
#define pi 3.1415926
int main()
{
	float angle;   // 定义角度值
	float radian;  // 定义弧度
	float degree, minute, second;   //  定义 度 , 分 , 秒
	scanf_s("%f%f%f", &degree, &minute, &second);    //  输入
	angle = degree + minute / 60 + second / 3600;    //  进行计算得出角度值
	radian = angle * pi / 180;          //  角度转换弧度计算公式
	printf("%f\n", angle);    //  输出
	printf("%.2f\n", radian);
}

3.  结合(初学,有误请指正)

#include<stdio.h>
#define PI 3.1415926    // 宏定义

//   计算角度值,即弧度转角度
void angle(double rad)
{
	double angle1;   // 声明:角度
	int degree, minute, second;  //  声明 : 度 , 分 , 秒
	double min, sec;             //  中间变量

	angle1 = rad * 180 / PI;     //  计算角度值
	degree = int(angle1);        //  取出 度

	min = (angle1 - degree) * 60;  //  计算 分
	minute = int(min);             //  取出 分

	sec = (min - minute) * 60;     //  计算 秒
	second = int(sec);             //  取出 秒

	printf("%lf\n", angle1);
	printf("%d%d%d\n", degree, minute, second);	
}

// 计算弧度  即 角度转弧度
void redian(double ang)
{
	double redian1;           //  声明 弧度
	redian1 = ang * PI / 180; //  计算弧度值,即角度转弧度
	printf("%lf\n", redian1);
}

int main()
{
	double rad,ang;    //  声明: 弧度,角度
	scanf_s("%lf%lf", &rad, &ang);   //  输入 : 弧度,角度
	angle(rad);        //  调用函数名
	redian(ang);
	return 0;
}

经验证,结果无误

附在线弧度转换网站:角度转换在线计算器

  • 14
    点赞
  • 57
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值