sqrt()函数的详解和用法「建议收藏」

sqrt()函数的详解和用法「建议收藏」sqrt()函数是我们经常使用的一个函数。下面我就详细的介绍它的一些用法和使用规范所需的头文件#include<math.h>函数原型doublesqrt(doublex);作用:sqrt()用来求给定值的平方根常见的使用错误输出36的开根号忽略了sqrt()函数的返回值是double型。导致出错解决办法如下:常见的使用sqrt()函数的规范写法例如:我们要判断一个数是不是质数,只需要判断2~n开根号之间有没有可以整除的数就可以了错误的.

大家好,又见面了,我是你们的朋友全栈君。

sqrt()函数是我们经常使用的一个函数。下面我就详细的介绍它的一些用法和使用规范

所需的头文件

#include<math.h>

函数原型

double sqrt(double x);

作用:
sqrt() 用来求给定值的平方根

常见的使用错误
输出 36的开根号
在这里插入图片描述
忽略了sqrt()函数的返回值是 double型。导致出错

解决办法如下:
在这里插入图片描述
常见的使用sqrt()函数的规范写法
例如: 我们要判断一个数是不是质数,只需要判断 2 ~ n开根号 之间有没有可以整除的数就可以了
错误的写法:

bool find(int n)
{ 
   
	for(int i=2;i<=sqrt(n);i++)
	{ 
   
		if(n%i==0)
			return false;
	}
	return true;
}

上面的写法,其实并不推荐这样写。虽然我也经常这样写。
但是在一次做题的过程中,就因为这样写程序出现了bug。
我就改用下面的这种稳妥的写法了
正确的写法:

bool find(int n)
{ 
   
	int sql=(int)sqrt(1.0*n);//1.0*n的目的是 隐式转换成浮点数,开根号后再强制转换成整型 
	for(int i=2;i<=sql;i++)
	{ 
   
		if(n%i==0)
			return false;
	}
	return true;
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/132640.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号