C语言中float型数据怎么 取整数部分算法 或取小数部分

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言中float型数据怎么 取整数部分算法 或取小数部分相关的知识,希望对你有一定的参考价值。

参考技术A

分析如下:

一种简单的办法是直接强制转换到int型就是整数部分。减去这个int型就是小数部分了。

代码如下:

float n=12.223;
int x=(int)n;
float y=n-(float)x;

得出的x为数据的整数部分,y为数据的小数部分。

拓展资料

浮点型数据类型,FLOAT 数据类型用于存储单精度浮点数或双精度浮点数。浮点数使用 IEEE(电气和电子工程师协会)格式。浮点类型的单精度值具有 4 个字节,包括一个符号位、一个 8 位 excess-127 二进制指数和一个 23 位尾数。尾数表示一个介于 1.0 和 2.0 之间的数。由于尾数的高顺序位始终为 1,因此它不是以数字形式存储的。此表示形式为 float 类型提供了一个大约在-3.4E+38 和 3.4E+38 之间的范围。

(资料来源:百度百科:FLOAT)

c语言如何取整数和小数

用以下的代码可以把一个浮点数的整数部分和小数部分分离开来:

#include "stdio.h"

int main()

double a,pi=3.1415926;

 int i;

 i=(int)pi;        /*用(int)就可以取出浮点数的整数部分*/

 a=pi-i;            /*浮点数减去整数部分就是纯小数了*/

 printf("%.7lf=%d+%.7lf\\n",pi,i,a);

 system("pause");

 return 0;



参考技术A float f=2.3f,b;
int a;
a=(int)f;
b=f-a;本回答被提问者采纳
参考技术B int a = 0;
scanf("%d", &a);
float f = 0.0f;
scanf("%f", &f);
参考技术C 能具体点吗

以上是关于C语言中float型数据怎么 取整数部分算法 或取小数部分的主要内容,如果未能解决你的问题,请参考以下文章

c语言中的取整函数int语句怎么用啊?

C语言中如何将double型数据转换为数组?

c语言中的取整函数int语句怎么用?

怎么将c语言中一个浮点型数据的整数部分与小数部分提取出来

c语言float可以输入指数吗

为啥C语言中float型变量的数据范围比int大