任务和代码
/*
*Copyright (c)2015,CSDN学院
*All rights reserved.
*文件名称:one.c
*作 者:刘亦鑫
*完成日期:2015年4月1日
*版本号:v1.0
*
*问题描述:编写一个程序,其功能为:从键盘上输入一个浮点数(小数点后有三位数),然后分别输出该数的整数部分和小数部分。
*程序输出:该数的整数部分和小数部分
*/
#include <stdio.h>
#include <stdlib.h>
int main()
{
float fNumber;
int iInteger, iDecimal;
printf("请输入一个浮点数:");
scanf("%f",&fNumber);
iInteger=fNumber;
iDecimal=(int)(fNumber*1000)%1000;
printf("整数部分为:%d 小数部分为:%d\n", iInteger, iDecimal);
return 0;
}
运行结果
知识点总结
浮点数转变为整数型直接取整数部分;只有整数型与整数型之间才能求余数
心得
当整数部分超过5位后,小数部分会严重偏差,有时甚至会有负数,这应该和浮点数的数值范围有关