重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
b的类型声明错误,sprt函数返回double值。
创新互联建站成立于2013年,是专业互联网技术服务公司,拥有项目成都网站建设、网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元高台做网站,已为上家服务,为高台各地企业和个人服务,联系电话:13518219792
DOUBLE 数据类型保存双精度浮点数。它是一种近似数字数据类型,在算术运算后容易产生舍入误差。DOUBLE 值的近似特性意味着在比较 DOUBLE 值时通常应该避免使用等式的查询。
DOUBLE 值需要 8 个存储字节。
取值范围是 -1.79769313486231e+308 到 1.79769313486231e+308,最趋近于零的数为 2.22507385850721e-308。DOUBLE 类型的值精确到 15 位有效数字,而超过第十五位就可能会产生舍入误差。
sqrt()函数是cmath标头(在早期版本中为math.h )的库函数,用于查找给定数字的平方根,它接受数字并返回平方根。
扩展资料:
float 与 double 类型区别:
float 单精度浮点数在机内占 4 个字节,用 32 位二进制描述。
double 双精度浮点数在机内占 8 个字节,用 64 位二进制描述
浮点数在机内用指数型式表示,分解为:数符,尾数,指数符,指数四部分。
数符占 1 位二进制,表示数的正负。
指数符占 1 位二进制,表示指数的正负。
尾数表示浮点数有效数字,0.xxxxxxx, 但不存开头的 0 和点。
指数存指数的有效数字。
指数占多少位,尾数占多少位,由计算机系统决定。
可能是数符加尾数占 24 位,指数符加指数占 8 位 -- float。
数符加尾数占 48 位,指数符加指数占 16 位 -- double。
知道了这四部分的占位,按二进制估计大小范围,再换算为十进制,就是你想知道的数值范围。
直接用两个数(或变量)相乘就可以表示平方,比如x*x
不过如果,需要求m的n次方,就需要用到pow(x,y)乘方(包括开方)这个库函数了,使用pow(x,y)这个库函数,需要math.h头文件。
其中x和y都是双精度浮点(double)型。
#include"math.h"
U32sqrt_fun(U64x){
U32low=0;
U32high=x;
U32mid;
U64data;
while(low high){
mid=(low+high)/2;
data=(U64)mid*mid;
if(data x){
high=mid-1;
}else if(data x){
low=mid+1;
}else{
return(mid);
}
}
return(mid);
}
voidmain(void){
volatileU32td1,td2;
U64d=0x12345678ABCD;
td2=sqrt(d);
td1=sqrt_fun(d);
}
扩展资料
C语言无参函数的定义:
dataType是返回值类型,它可以是C语言中的任意数据类型,例如int、float、char等。
functionName 是函数名,它是标识符的一种,命名规则和标识符相同。函数名后面的括号( )不能少。
body是函数体,它是函数需要执行的代码,是函数的主体部分。即使只有一个语句,函数体也要由{}包围。
如果有返回值,在函数体中使用return语句返回。return出来的数据的类型要和dataType一样。
#includemath.h应该是这个吧,开平方的函数就是sqrt(你要开平方的那个数)