当前位置:首页 > 行业动态 > 正文

c语言怎么取整数

在C语言中,可以使用不同的方法来取整数,下面是一些常见的方法:

1、使用强制类型转换

通过将一个浮点数或双精度浮点数强制转换为整数类型(如int),可以取得该数的整数部分,这种方法适用于已知数值范围的情况。

#include <stdio.h>
int main() {
    double num = 3.14;
    int integerPart = (int)num;
    printf("Integer part: %d
", integerPart);
    return 0;
}

输出结果为:

Integer part: 3

2、使用取模运算符(%)

取模运算符(%)返回两个数相除后的余数,通过将一个浮点数或双精度浮点数与整数进行取模运算,可以得到该数的整数部分,需要注意的是,取模运算的结果是一个浮点数,如果希望得到整数结果,需要再次进行强制类型转换。

#include <stdio.h>
int main() {
    double num = 7.89;
    int integerPart = (int)num % 5; // 先将num强制转换为整数,再与5取模
    printf("Integer part: %d
", integerPart);
    return 0;
}

输出结果为:

Integer part: 2

3、使用floor函数和ceil函数

floor函数返回不大于给定参数的最大整数值,而ceil函数返回不小于给定参数的最小整数值,这两个函数可以在已知数值范围的情况下取得整数部分。

#include <math.h>
#include <stdio.h>
int main() {
    double num = 3.14;
    int integerPart = (int)floor(num); // 使用floor函数取得不大于num的最大整数
    printf("Integer part using floor: %d
", integerPart);
    return 0;
}

输出结果为:

Integer part using floor: 3
#include <math.h>
#include <stdio.h>
int main() {
    double num = 3.14;
    int integerPart = (int)ceil(num); // 使用ceil函数取得不小于num的最小整数
    printf("Integer part using ceil: %d
", integerPart);
    return 0;
}

输出结果为:

Integer part using ceil: 4
0