C语言中的除法怎样有高精度?如 实数型变量 Y=1/5,显示Y=0,怎么修改?
来源:百度知道 编辑:UC知道 时间:2024/06/02 05:37:12
y = 1.0/5.0
因为如果像你那样写的话先作int型数的运算,这时小数部分就丢了,然后转换为double型的,加小数点后,默认为double型数的运算了,当然小数就不会丢啦
强制转换
double y;
y=(double)1/5;
UC知道是一部内容开放、自由的互动网络百科全书
客观、专业、权威的知识性百科全书
来源:百度知道 编辑:UC知道 时间:2024/06/02 05:37:12
y = 1.0/5.0
因为如果像你那样写的话先作int型数的运算,这时小数部分就丢了,然后转换为double型的,加小数点后,默认为double型数的运算了,当然小数就不会丢啦
强制转换
double y;
y=(double)1/5;