为什么C语言中,ceil函数的返回值会是double类型?

ceil(double x) 是返回不小于x的最小整数。
那既然是整数,为什么不返回int,而要返回double呢?

首先得明确一点:整数是实数的一个子集

在c语言中,double是实数类型,int是整数类型

关键的是他们的作用范围不同

double能够表示 [-10^308,10^308]
int只能表示[-2^31,2^31)

若返回值为int的话,可能会超出int的范围。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-07-11
为了使ceil函数的使用范围更广。。。
int类型容量太小。
第2个回答  推荐于2017-10-08

    首先,C语言中函数的返回值是由函数的定义来确定的,而ceil函数在定义时就规定了返回值为double型

     ceil函数:
      用 法: double ceil(double x);
      功 能: 返回大于或者等于指定表达式的最小整数
      头文件:math.h

相似回答