您的位置:首页 > 其它

第11讲 项目1----分离整数小数部分

2015-10-19 18:23 253 查看
任务和代码:

/*
*Copyright (c)2015 CSDN学院
*All rights reserved
*文件名字:main.c
*作者:zzhou
*完成日期:2015年10月19日
*版本号:V1.0
*
*问题描述:从键盘上输入一个浮点数(小数点后有三位数),然后分别输出该数的整数部分和小数部分
*程序分析:1、输入一个浮点数   2、使用强制类型转换 3、把这个三位数乘以1000,再强制转换成整数,最后对1000取余数
*/

#include <stdio.h>
#include <stdlib.h>

int main()
{
float num ;
int a , b ;
printf("请输入一个三位小数\n");
scanf("%f",&num);//输入一个浮点数
a = (int)num;//强制转换为整型数字
b =(int) (num * 1000) % 1000;//取余运算的两侧必须为整型,所以左边需要做强制类型转换
printf("%d %d\n",a,b);
return 0;
}


运行结果:



知识点总结:

本项目考察的知识为强制数据类型转换,以及运算符号在取数字各个位数数字的常用方法

心得:

如果把 b =(int) (num * 1000) % 1000改为b =(int) num * 1000 % 1000,所得结果与想象中

不一样,问题在于浮点数强制转换为整型时,增加后面的精度,导致结果不准;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: