sqrt函数

sqrt函数,第1张

因为1既不是质数也不是合数。所以2开始。判断一个数是否是素数,只要判断其能否被2到sqrt(x)整除。因为如果x的一个因素大于sqrt(x),那么与其对应的那个因素必定小于sqrt(x),所以只要判断其中的一半就可以了,即2=<i<=sqrt(x)(如果x不能被任意一个i整除,就说该数是质数)

sqrt()函数在c语言中用于计算一个非负实数的平方根;其语法为“double sqrt(double)”。在sqrt()函数中没有“sqrt (int)”,但是返回值可以为int。
sqrt()函数在c语言中用于计算一个非负实数的平方根
函数原型: 在VC60中的mathh头文件的函数原型为double sqrt(double);
说明:sqrt系Square Root Calculations(平方根计算),通过这种运算可以考验CPU的浮点能力。

你的库文件mathh里面的sqrt()函数的参数有两种,aqrt(double
value),或者aqrt(float
value),而你用的是aqrt(5),找不到匹配项。
因为c++支持重载函数,如果参数不匹配那么就认为找不到该函数。
而c不支持重载,所以会自动将你的5转换成浮点数再运算,就不报错了。
正确的做法,将aqrt(5)改为sqrt(50)

#include<stdioh>
#include<stdlibh>
#include<mathh>
void main()
{
int m,i;
float k; //改动这
printf ("input a number:");
scanf("%d",&m);
// k = sqrt(m);
k = sqrt(float(m)); //改动这
for (i=2; i <=k;i++)
if (m % i==0)
break;
if (i>k)
printf("yes\n");
else
printf("no\n");
}

//书上写的不一定对


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/13337474.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-17
下一篇 2023-07-17

发表评论

登录后才能评论

评论列表(0条)

保存