c语言通过输入起点,中间点,终点坐标计算弧长与夹角的代码,透明标尺那个程序里的。

Python014

c语言通过输入起点,中间点,终点坐标计算弧长与夹角的代码,透明标尺那个程序里的。,第1张

/*c语言通过输入起点,中间点,终点坐标计算弧长与夹角的代码*/

#include<stdio.h>

#include<math.h>

main()

{

float a[3][2],b[1][2],r,R,s,ra,sl /*二维数组的前三行输入三个对应的坐标,数组b计算起终点的中点坐标*/

int i,j /*r记录弦的半长,R记录弧的半径,s记录弦中点到弧中点的距离,ra记录夹角,sl记录弧长*/

for(i=0i<3i++)

{

for(j=0j<2j++)

{

printf("a[%d][%d]=",i+1,j+1)

scanf("%f,%f"&a[i][j])

printf(",")

}

printf("\n")

}

for(i=0i<2i++)

{

b[0][i]=(a[0][i]+a[2][i])/2.0 /*求出弦中点坐标*/

}

r=sqrt((a[2][0]-a[0][0])*(a[2][0]-a[0][0])+(a[2][1]-a[0][1])*(a[2][1]-a[0][1]))/2.0 /*计算弦长并除以2*/

s=sqrt((a[1][0]-b[1][0])*(a[1][0]-b[1][0])+(a[1][1]-b[1][1])(a[1][1]-b[1][1]))

R=(s*s+r*r)/(2.0*s) /*因为有(R-s)2+r2=R2(这个注释中的2表示平方)*/

ra=2.0*(asin(r/R)) /*求出夹角,弧度制*/

sl=R*ra /*求出弧长*/

printf("sl=%f,ra=%f\n",sl,ra)

}

#include <stdio.h>

int main(){

float s,l,a,r

printf("请输入扇形半径r和圆心角a(r,a):")

scanf("%f,%f",&r,&a)

s=0.5*a*r*r

l=a*r

printf("s=%.2f,l=%.2f\n",s,l)

return 0

}

1、30°是角度,但在C语言中用的是弧度。什么是角度?什么是弧度?他们之间又怎么转换呢?

2、角度:角度,是一个数学名词,表示角的大小的量,通常用度或弧度来表示。 也可用来比喻看事情的出发点。

3、弧度:在数学和物理中,弧度是角的度量单位。它是由国际单位制导出的单位,单位缩写是rad。定义:弧长等于半径的弧,其所对的圆心角为1弧度。(即两条射线从圆心向圆周射出,形成一个夹角和夹角正对的一段弧。当这段弧长正好等于圆的半径时,两条射线的夹角的弧度为1)。

4、他们之间的转换公式:角度乘以 π/180 便可

如 180°换成弧度制 把180乘π/180 得π

相反地 弧度制换角度 乘以180/π 就可以啦~

5、所以

sin(30°)在C中应该写成sin(30*3.14/180)