怎样取float的前两位小数
2个回答
展开全部
是获取如12.345678中间的3,4吗?
#include<iostream>
using namespace std;
void main(){
float srcfloat=12.3456;
int t=0;
//将原数值乘以10,将小数点第一位变为个位数字
t=srcfloat*10;
//整数,对10取余,获得个位数,获取小数点后第一位,存入a1
int a1=t%10;
//将原数值乘以100,将小数点第二位变为个位数字
t=srcfloat*100;
//整数,对10取余,获得个位数,获取小数点后第二位,存入a1
int a2=t%10;
cout<<"小数点后第一位"<<a1<<" 小数点后第二位"<<a2<<endl;
}
#include<iostream>
using namespace std;
void main(){
float srcfloat=12.3456;
int t=0;
//将原数值乘以10,将小数点第一位变为个位数字
t=srcfloat*10;
//整数,对10取余,获得个位数,获取小数点后第一位,存入a1
int a1=t%10;
//将原数值乘以100,将小数点第二位变为个位数字
t=srcfloat*100;
//整数,对10取余,获得个位数,获取小数点后第二位,存入a1
int a2=t%10;
cout<<"小数点后第一位"<<a1<<" 小数点后第二位"<<a2<<endl;
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2016-01-15 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
关注
展开全部
两种方法:需要导入math包
import java.math.*;
方法1:
float f = 34.232323;
BigDecimal b = new BigDecimal(f);
float f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).floatValue();
// b.setScale(2, BigDecimal.ROUND_HALF_UP) 表明四舍五入,保留两位小数
方法2:
float scale = 34.236323;
DecimalFormat fnum = new DecimalFormat("##0.00");
String dd=fnum.format(scale);
System.out.println(dd);
import java.math.*;
方法1:
float f = 34.232323;
BigDecimal b = new BigDecimal(f);
float f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).floatValue();
// b.setScale(2, BigDecimal.ROUND_HALF_UP) 表明四舍五入,保留两位小数
方法2:
float scale = 34.236323;
DecimalFormat fnum = new DecimalFormat("##0.00");
String dd=fnum.format(scale);
System.out.println(dd);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |