C 库 - floor() 函数



C 库的 floor() 函数,类型为 double,接受单个参数 (x),返回小于或等于给定值的最大的整数。

此函数将数字向下舍入到指定有效数字的最近整数倍。

语法

以下是 C 库函数 floor() 的语法:

double floor(double x)

参数

此函数仅接受一个参数:

  • x - 这是浮点数。

返回值

此函数返回不大于 x 的最大整数。

示例 1

以下是一个基本的 C 库示例,用于演示 floor() 函数。

#include <stdio.h>
#include <math.h>

int main () {
   float val1, val2, val3, val4;

   val1 = 1.6;
   val2 = 1.2;
   val3 = 2.8;
   val4 = 2.3;

   printf("Value1 = %.1lf\n", floor(val1));
   printf("Value2 = %.1lf\n", floor(val2));
   printf("Value3 = %.1lf\n", floor(val3));
   printf("Value4 = %.1lf\n", floor(val4));
   
   return(0);
}

以上代码产生以下结果:

Value1 = 1.0
Value2 = 1.0
Value3 = 2.0
Value4 = 2.0

输出

示例 2

下面的程序展示了如何使用 floor() 将值向下舍入。

#include <stdio.h>
#include <math.h>

int main() {
   double num = 8.33;
   double result = floor(num);

   printf("Floor integer of %.2lf = %.0lf\n", num, result);
   return 0;
}

执行以上代码后,我们得到以下结果:

Floor integer of 8.33 = 8

输出

示例 3

在这里,我们使用 floor() 生成整数表,该表范围为正浮点数。

#include <stdio.h>
#include <math.h>

int main() {
   double start = 6.5;
   double end = 9.5;

   printf("Table of Floor Integers:\n");
   for (double num = start; num <= end; num += 1.0) {
       double result = floor(num);
       printf("Floor(%.2lf) = %.0lf\n", num, result);
   }

   return 0;
}

输出

执行以上代码后,我们得到以下结果:

Table of Floor Integers:
Floor(6.50) = 6
Floor(7.50) = 7
Floor(8.50) = 8
Floor(9.50) = 9
广告