fyqt.net
当前位置:首页 >> C pow函数 >>

C pow函数

1,要加入头文件 math.h 2,pow(x,y);//其作用是计算x的y次方。x、y及函数值都是double型 例: 我要计算2的5次方 源代码如下: #include"stdio.h" #include"math.h" main() { long total; int x = 2, y = 5; total = pow(x,y); /*调用pow函数*/ ...

原型:extern float pow(float x, float y); 用法:#include 功能:计算x的y次幂。 说明:x应大于零,返回幂指数的结果。 举例: // pow.c #include #include #include void main() { printf("4^5=%f",pow(4.,5.)); getchar(); }

gdb自己设断点去查变量

double r,n,p;// 定义为 int n 对应下面%d scanf("%f%d", &r,&n);//double 型 格式输入 %lf r=r+1; p=pow(r,n); printf("%f\n", p);//改为%lf 这里你 用float型 输入输出double型数据 会造成数据缺失

#include #include int main() { float a,p,b,I; int n; b=pow(1+p,n); I=a*b-a; printf("%f\n",I); return 0; } pow函数是这样用的,a=pow(b,c); 表示a等于b的c次方

要加入头文件 math.h 2,z=pow(x,y);//其作用是计算x的y次方

头文件是“math.h” pow(x,y);x的y次方

(int)强制转成整型,如果是小数就只取整数部分。 可能有的编译器会把100保存成99.999999吧,我推测,这样只会取99,不精确。 改进办法是改成(int)(pow(10,i)+0.01).

应该可以的,不过如果从浮点型到整型,小数点后面的数据会丢失的,造成精度不准确。你的程序里实参a,b,c都是整型,所以会有warning,数据精度丢失。

b=(int) (pow(10,i)+0.001); //pow返回值为double类型,其结果在转换为int时,会丢失小数部分。double本身就不能精确表示小数,只是个近似值,因此,加上个精度再取整,才能正确显示结果

网站首页 | 网站地图
All rights reserved Powered by www.fyqt.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com