C++ 输入输出格式 与 精度问题

来源:互联网 发布:男人热恋期的举动知乎 编辑:程序博客网 时间:2024/06/05 09:30

1、输出固定位小数 & 固定位整数
2、取整函数ceil(),floor(),round()
3、输入时读取 特定位
4、sprintf() 函数使用详解
http://www.cnblogs.com/gisdev/archive/2007/11/27/973561.html
一、输出固定位小数 & 固定位整数

使用printf():

int myCost_1 = 10;int myCost_2 = 234;printf("%.3f\n", myCost_1 / 100.0);//商 保留三位小数printf("%04d  %02d\n", myCost_2,myCost_2);//分别输出4位和两位//输出结果:0.100//输出结果: 0100 100    //数本身有3位,则会3位都输出

使用cout:

#include<iomanip>//头文件float c = 3.234;cout<<setiosflags(ios::fixed)<<setprecision(2)<<c<<"\n"//输出结果3.23

setiosflags(ios::fixed):设置浮点数以固定的小数位数显示
setprecision(2):是设置浮点数的精度为2位。


二、取整函数:

#include<cmath>

ceil(x) 返回不小于x的最小整数值(然后转换为double型)

floor(x) 返回不大于x的最大整数值

round(x) 返回x的四舍五入整数值


三、输入格式化

int year,month,day;//**读取特定位数**:前四位赋值给year,后四位两两赋值给month和dayscanf("%4d%2d%2d", &year, &month, &day);//inout: 19951128//year=1995, month=11, day=28
0 0