C语言怎么取出小数点后的数
时间: 2023-04-08 17:02:05 浏览: 713
可以使用C语言中的数学库函数fmod()来取出小数点后的数。例如,如果要取出3.14中的0.14,可以使用以下代码:
double num = 3.14;
double decimal = fmod(num, 1.0);
其中,fmod()函数的第一个参数是被除数,第二个参数是除数,它返回被除数除以除数的余数。在这个例子中,1.0是除数,所以fmod(num, 1.0)返回的是num除以1.0的余数,即小数点后的数0.14。
相关问题
一个表示小数的整数,如何利用简单c语言把小数点第一位和第二位取出来
对于一个表示小数的整数,我们可以通过取模和除法的方式来取出小数点后面的数字。例如,假设我们有一个表示温度的整数变量temperature,单位是摄氏度,并且小数点后有两位,即表示精确到0.01度。那么我们可以通过以下代码来取出小数点后第一位和第二位的数字:
```c
int temperature = 2615; // 假设温度为26.15度
int decimal = temperature % 100; // 取出小数点后两位数字,即15
int decimal_first = decimal / 10; // 取出小数点后第一位数字,即1
int decimal_second = decimal % 10; // 取出小数点后第二位数字,即5
```
在上面的代码中,我们首先用取模运算符%取出temperature变量的后两位数字,即小数点后的数字15。然后再用除法和取模运算符将15拆分为小数点后第一位数字1和第二位数字5。最终,decimal_first变量存储的是小数点后第一位数字1,decimal_second变量存储的是小数点后第二位数字5。
用c语言写出输入一个不小于100且小于1000,同时包括小数点后-位的一一个浮点数,例如123.4,要求把这个数字 比如123.4翻转过来,变成4.321并输出。
好的,以下是 C 语言的代码实现:
```c
#include <stdio.h>
#include <math.h>
int main() {
float num;
printf("请输入一个不小于100且小于1000的浮点数:");
scanf("%f", &num);
// 取出整数部分和小数部分
int integer_part = (int)num;
float decimal_part = num - integer_part;
// 将整数部分翻转
int reversed_integer_part = 0;
while (integer_part > 0) {
reversed_integer_part = reversed_integer_part * 10 + integer_part % 10;
integer_part /= 10;
}
// 输出翻转后的浮点数
printf("翻转后的浮点数为:%f\n", reversed_integer_part + decimal_part * pow(10, floor(log10(reversed_integer_part)) + 1));
return 0;
}
```
此代码通过将浮点数的整数部分翻转,再将小数部分与翻转后的整数部分合并成新的浮点数,最终输出结果。需要注意的是,小数点后位数可能不同,因此需要使用 `pow()` 函数和 `floor()` 函数计算出小数点后的位数。
阅读全文