1. 如何在C中使用pow
# include <math.h>//这个。其实没有也可以。
double x,y,z;//自己按需赋值。【1】
z=pow(x,y);
printf(“%lf\n【2】”,z【3】);//可以根据想输出几位,比如说输出一位小数%.1lf,来调整。
2. 备注项的其他形式
[1] 赋值
(1) 感谢智慧的C,当将”x”,”y”定义为int的时候,也是可以滴,备注三也是成立地。
(2) 感谢智慧的C,当将”z”定义为int的时候,也是可以滴,只需要将printf的类型变成”%d”。
[2] “%lf”
因为,现在z的类型是double,所以使用“%lf”若使用“%d”,则总输出为零。
[3] “z”
要是这里想把“z”变成“pow(x,y)”也是可以的
3. 类型转换对于pow会产生的问题
当将”z”定义为int,或者是printf的类型变成”%d”的时候,产生了一个由double变成int的转化问题。在这里,转化过程非常粗暴,会直接去掉小数,从而导致误差。
举个粒子:
#include<stdio.h>
#include<math.h>
int main(){
double x=10,y=2;
int z;
z = pow(x,y);
printf("%d",z);
}
输出结果:99
为了避免这个问题,又想要输出整数,可以采取的做法:
1) printf("%.0lf",pow(x,y));
2) printf("%d",(int)(pow(x,y)+0.5));//人为四舍五入
/*就到这里了,
要继续加油哦~*/