不用sqrt库函数求一个整数的平方根(牛顿迭代法)

#include <stdio.h>
#include <math.h>
double mysqrt(int n)
{
	double x0,x1;
	x0=1;
	while(1)	
	{
		x1=0.5*(x0+n/x0);
		if(fabs(x1-x0)<1e-3)break;
		x0=x1;
	}
	return x0;
}
int main()
{
	printf("%f",mysqrt(10));
	return 0;
}

参考链接:http://wenku.baidu.com/view/6b74c622bcd126fff7050bfe.html

你可能感兴趣的:(不用sqrt库函数求一个整数的平方根(牛顿迭代法))