反比例函数c语言 反比例函数c语言有哪些

急!!用c语言画数学函数图像(一次函数、二次函数、反比例函数)

用c++写的(实际上和C区别不大,就用了类封装了一些成员函数,可以很简单改成C)

创新互联公司自2013年起,先为乾安等服务建站,乾安等地企业,进行企业商务咨询服务。为乾安企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

用C语言求,设p1=(x1,y1)和p2=(x2,y2)分别是二维空间的两个点,求p1和p2构成线段的中点坐标

三角形p1-o-a1是等腰直角三角形,并且斜边oa1在x轴上,p1在曲线上

那么p点所在的角为直角,|y1|等于|x1|,

我们在第一象限讨论如下:

易知y1=2,a1(4,0)=(2y1,0)

y2=x2-2y1,x2*y2=4,所以(y2)^2-2y1*y2=4,a2(2(y1+y2),0)

y3=x3-2(y1+y2),x3*y3=4,所以(y3)^2+2(y1+y2)*y3=4

..............................

(yn)^2+2*(sn-1)*yn=4(n=2,s1=y1=2)

(yn+1)^2+2*sn*(yn+1)=4(n=1,s1=y1=2)

整理:sn=2/(yn+1)-(yn+1)/2

y1=2,s1=2根1

y2=2根2-2根1,s2=2根2

y3=2根3-2根2,s3=2根3

y4=2根4-2根3,s4=2根4

.....................

y10=2根10-2根9,s10=2根10

所以y1+y2+.....+y10=2根10

----------------------------------------------------------------------

c语言怎么实现反比例函数

float func(float x,float k)//k为反比例常数

{

if ( x==0)

return 0;

else

return k/x;

}

c语言程序求二维坐标中两圆的面积及是否相交

经典题。网上答案很多,给你抄一个:

假设半径小的圆为c1,半径大的圆为c2。

c1的半径r1,圆心坐标(x1,y1)。c2的半径r2,圆心坐标(x2,y2)。

d为两圆圆心连线的长度。

相交面积为S

d=sqrt((x1-x2)^2+(y1-y2)^2)

(1)如果r1+r2=d

那么两圆相离,相交面积S=0

(2)如果r2-r1=d

那么半径小的圆内含半径大的圆,那么相交面积为小圆的面积S=pi*r1*r1

(3)既非(1)也非(2)

在图上画两个相交圆,结合图像看。

那么两圆相交,连接小圆的圆心与两个圆的交点,连接大圆的圆心和两个圆的交点。

可以发现形成的图形被两个圆心的连线平分成2个全等三角形。

由小圆圆心和交点所连两条线(长度为半径)以及在大圆之内的弧所形成的扇形为S1

由大圆圆心和交点所连两条线(长度为半径)以及在小圆之内的弧所形成的扇形为S2

由小圆圆心和交点所连两条线以及由大圆圆心和交点所连两条线所形成的四边形的面积为S3

可见相交面积S=S1+S2-S3

要求出扇形的面积,要知道扇形的圆心角。

小圆包含的扇形的圆心角为2*a1(考虑一个三角形)

a1=acos((r1^2+d^2-r2^2)/(2.0*r1*d)) 余弦定理

a2=acos((r2^2+d^2-r1^2)/(2.0*r2*d))

S1=pi*r1*r1*2*a1/(2*pi)=a1*r1*r1

同理

S2=a2*r2*r2

S3为一个三角形面积的2倍

S3=2*r1*d*sin(a1)/2=r1*d*sin(a1)

则S=a1*r1*r1+a2*r2*r2-r1*d*sin(a1)

代码:

#define pi acos(-1.0)

#define maxn 10

struct node{

double x;

double y;

double r;

} c[maxn];

double area(int i,double r1,int j,double r2){

double d=

sqrt((c[i].x-c[j].x)*(c[i].x-c[j].x)+(c[i].y- c[j].y)*(c[i].y-c[j].y));//圆心距

if(r1r2){

double temp=r1;

r1=r2;

r2=temp;

}//r1取小

if(r1+r2=d)

return 0;//相离

else if(r2-r1=d)

return pi*r1*r1;//内含

else {

double a1=acos((r1*r1+d*d-r2*r2)/(2.0*r1*d));

double a2=acos((r2*r2+d*d-r1*r1)/(2.0*r2*d));

return (a1*r1*r1+a2*r2*r2-r1*d*sin(a1));

}//相交

}

=======

如果只有2个圆,前面可用:

#define maxn 2

main()

{

输入或赋值 c[0].x, c[0].y,c[0].r, c[1].x, c[1].y,c[1].r,

调用 参数:i=0;r1=c[0].r; j=1;r2=c[1].r;

调用:

printf("Area=%lf", area(0,c[0].r,1,c[1].r) );

}


分享名称:反比例函数c语言 反比例函数c语言有哪些
标题网址:http://scjbc.cn/article/dooghgd.html

其他资讯