基于float和double的简单比较

float与double精度对比
本文通过两个示例程序,探讨了在C语言中float与double类型在精度上的区别。指出对于超过10次的需要高精度的运算,推荐使用double以确保准确性。

 

在下面这个程序 , 从13开始数字开始偏移,不是很准确。 

#include <stdio.h>
int main()
{ 
	float Sn=0;
	int k;
	long long r=1;
	
	scanf("%d",&k);
	
	while(Sn<=k)
	{
		Sn = (1/(1.0*r)+Sn);
		r++;
	}
	r--;
	printf("%lld",r);
	
	return 0;
}

对于下面这个程序来说,double保持了结果的精确性。

#include <stdio.h>
int main()
{ 
	double Sn=0;
	int k;
	long long r=1;
	
	scanf("%d",&k);
	
	while(Sn<=k)
	{
		Sn = (1/(1.0*r)+Sn);
		r++;
	}
	r--;
	printf("%lld",r);
	
	return 0;
}

float来说,传输速度比较慢,但是精度很是优秀,超过10次的需要精度的运算,必须要使用double(必须在保险的方面)。 flaot 来说低于10次可以使用来着。  

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值