博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
浮点数(double)的优势
阅读量:5152 次
发布时间:2019-06-13

本文共 1112 字,大约阅读时间需要 3 分钟。

用 double 处理大数据 , 即使字符串位数超百位,同样可以用 sscanf 或 atof 来处理,却不会变成负数,原因是浮点数可以用指数表示,但精度会丢失,下面介绍利用这个性质解决的一些问题:

  如何判断一个字符串表示的数值是否超出整型范围;

  int 取值范围:最大2147483647

#include
#include
#include
#include
#include
using namespace std ;int main() { char s1[1000] , s2 , s3[1000] ; while(scanf("%s %c %s" , s1 , &s2 , s3 )!=EOF) { printf("%s %c %s\n" , s1 , s2 , s3) ; double a , b ; a = atof(s1) ; b = atof(s3) ; if(a > 2147483647) printf("first number too big\n"); if(b > 2147483647) printf("second number too big\n") ; if(s2 == '+' && a+b > 2147483647) printf("result too big\n") ; else if(s2 == '*' && a * b > 2147483647) printf("result too big\n") ; } return 0 ;}

 在对精度要求不高的数据处理中,可以用 double 达到 大数据处理问题,浮点数可以用指数来表示,这点很重要。

转载于:https://www.cnblogs.com/NYNU-ACM/p/4237443.html

你可能感兴趣的文章