十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
b的类型声明错误,sprt函数返回double值。
成都做网站、成都网站制作服务团队是一支充满着热情的团队,执着、敏锐、追求更好,是创新互联的标准与要求,同时竭诚为客户提供服务是我们的理念。成都创新互联把每个网站当做一个产品来开发,精雕细琢,追求一名工匠心中的细致,我们更用心!
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。
知道了这四部分的占位,按二进制估计大小范围,再换算为十进制,就是你想知道的数值范围。
#include stdio.h
#include math.h
int main()
{
double p, n;
while( scanf("%lf%lf", n, p) == 2) //n是开方数,p是要开方的数
printf("%.lf\n", pow(p, 1/n));
return 0;
}
如果楼主你要求的是64的开立方,可以输入3 64
PS:若有不明白的地方,可以追问
表示如下:
首先要把math头文件添加进去
#includemath.h
在程序中调用 sqrt()函数
给个简单的例子:
#include stdio.h
#include math.h
main ()
{
int a;
double b;
a = 100;
b=sqrt (a) ; //给a开平方
pintf("%lf",b);
}
C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。
C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。
C语言是普适性最强的一种计算机程序编辑语言,它不仅可以发挥出高级编程语言的功用,还具有汇编语言的优点,因此相对于其它编程语言,它具有自己独特的特点。具体体现为以下三个方面:
其一,广泛性。C语言的运算范围的大小直接决定了其优劣性。C语言中包含了34种运算符,因此运算范围要超出许多其它语言,此外其运算结果的表达形式也十分丰富。此外,C语言包含了字符型、指针型等多种数据结构形式,因此,更为庞大的数据结构运算它也可以应付。
其二,简洁性。9类控制语句和32个关键字是C语言所具有的基础特性,使得其在计算机应用程序编写中具有广泛的适用性,不仅可以适用广大编程人员的操作,提高其工作效率,同时还能够支持高级编程,避免了语言切换的繁琐。
其三,结构完善。C语言是一种结构化语言,它可以通过组建模块单位的形式实现模块化的应用程序,在系统描述方面具有显著优势,同时这一特性也使得它能够适应多种不同的编程要求,且执行效率高。
c语言的开方函数是:sqrt()函数。
1、功能:计算一个非负实数的平方根。
2、函数原型:在VC6.0中的math.h头文件的函数原型为double sqrt(double)。
3、说明:sqrt系Square Root Calculations(平方根计算),通过这种运算可以考验CPU的浮点能力。
4、头文件:math
double sqrt(double x)
参数解释:
x 为要计算平方根的值。
如果 x 0,将会导致 domain error 错误,并把全局变量 errno 的值为设置为 EDOM。
返回 x 平方根。
注意,使用 GCC 编译时请加入-lm。
例:
扩展资料:
sqrt()函数的注意事项:
1、sqrt()函数,里面的形参是double型的,所以调用的时候,要强制转换成double型。
2、sqrt()函数都最后返回值是double型,而n是int型,所以要强制转换n=(int)sqrt((double)x)。
3、到底要不要进行强制转换,需要看这个函数的形参和返回值是什么类型,如果没有进行强制转换,有的编译器会警告,有的会报错,有的就直接通过。
参考资料:
百度百科--平方根计算
直接用两个数(或变量)相乘就可以表示平方,比如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一样。
若开平方,可以使用函数sqrt()完成,若开其他次方,可以借助函数pow()完成。
开平方示例:
#includemath.h//sqrt函数使用到的头文件
#includestdio.h
int main(void)
{
double x=4.0,result;
result=sqrt(x);//对x开平方
printf("%g\n",result);
return 0;
}
//输入结果:2
开三次方示例:
#includemath.h//pow函数使用的头文件
#includestdio.h
int main(void)
{
double x=27.0,result;
result=pow(x, 1.0/3);//对x开三次方
printf("%g\n",result);
return 0;
}
//输出结果:3
对于借助pow函数实现开方的可以借鉴开三次方示例代码。