任务和代码:
/*
*Copyright (c)2017 CSDN学院
*All rights reserved
*文件名称:main.c
*作者: Osseyda
完成日期:2017.9.11
*版本号:v2.
*
*问题描述:从键盘上输入一个浮点数(小数点后有三位数),讲整数部分与小数分离
*问题输出:分别输出该数的整数部分和小数部分
*/
#include <stdio.h>
#include <stdlib.h>
int main()
{
float x;
int a,b;
printf("请输入一个浮点数: ");
scanf("%f",&x);
b=(x*1000)/1000; //将浮点数先化为整数,再利用除法和取余运算
a=(int)(x*1000)%1000;
printf("该数的整数部分和小数部分分别为:%d %d\n",b,a);
return 0;
}
运行结果:
知识点总结:
1.基于/,%运算;2.取余运算一定要强制类型转换为int型
心得:
先将浮点数转化为整数,再利用/,%取前取后,是不是有点投机取巧呢?哈哈,觉得这样解决问题也挺好的!
如果是输入输入一个浮点数(小数点后有n位数)呢?
任务和代码: