C语言判断两个数的整数部分和小数点前六位是否相等
时间: 2024-12-19 14:26:02 浏览: 8
c语言ex和re中的一些单词1
在C语言中,判断两个数的整数部分和小数点前六位是否相等,可以先将这两个数转换为double类型,然后截取它们的小数点前六位并四舍五入。以下是一个简单的示例:
```c
#include <stdio.h>
#include <math.h>
// 函数用于获取double型数字的小数点前六位
double truncate_to_six_digits(double num) {
double factor = pow(10, 6);
return trunc(num * factor) / factor;
}
int main() {
double num1, num2;
printf("请输入第一个数:");
scanf("%lf", &num1);
printf("请输入第二个数:");
scanf("%lf", &num2);
// 获取整数部分
int intPart1 = (int)num1;
int intPart2 = (int)num2;
// 小数点前六位
double part1 = truncate_to_six_digits(num1);
double part2 = truncate_to_six_digits(num2);
if (intPart1 == intPart2 && trunc(part1) == trunc(part2)) { // 比较整数部分和小数点前六位
printf("两个数的整数部分和小数点前六位相等。\n");
} else {
printf("两个数的整数部分或小数点前六位不相等。\n");
}
return 0;
}
```
在这个例子中,`truncate_to_six_digits`函数通过乘以10的六次方并将结果四舍五入到最接近的整数来实现。`trunc`函数用于截断小数部分。
阅读全文