很菜的算数返回值的问题,在线等候! 如1000除以742,实际值应该是1.3477088...,可是1000/742的结果是没有小数点后的整数值,请问怎样才能得到四舍五入后的小数点后两位的结果值呢,谢谢了! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 整数是取整除法。可以:1000/(double)742就可以返回一个double型了。 float和double的精度都是固定的,不可以在程序中指定,但“数值”和“数值的显示”是两码事,你完全可以把一个浮点数格式化成一个只有两位小数的数字字符串再显示出来。比如:double d = 3.1415926;char s[16];sprintf(s, "%.2f", d); printf("%.2f\n",1000/(double)742); 整数除整数,结果还是整数,所以这样除会不到小数位.可以先将整数去得轮换成浮点来计算:doube result = (double)1000/742; 四舍五入:保存两位小数的话首先要不得到的数+0.005然后再×100然后强制转换为整数然后在强制转换为浮点数再除以100((int)((1000/(double)742+0.005)*100))/(double)100如果是输出的话 就printf("%.2f\n",1000/(double)742+0.005); 先得到小数部分decdec*=100;dec+=0.5;int n=(int)dec;dec=n/100.0; 全部分出了,求解答关于exe资源问题 限制16进制输入 Detour库能否HOOK windows 98的API函数? 哪位大侠详细介绍一下宏? 这个错误信息是什么意思? 今天决定考研了,散分,为我来年成功庆祝!!!!!!!!!!!!!!!!!!!!!!!!!!!! 怎样通过IP查出服务器名称? AfxOleInit()有什么用的? tuyang()来取分 MFC 对话框 关于打印指定文件 为什么在ClistControl控件中无法显示列啊? 读入图片数据并且StretchBlt之后`窗口里图片不能马上显示
1000/(double)742
就可以返回一个double型了。
比如:
double d = 3.1415926;
char s[16];
sprintf(s, "%.2f", d);
然后再×100
然后强制转换为整数
然后在强制转换为浮点数再除以100((int)((1000/(double)742+0.005)*100))/(double)100如果是输出的话 就printf("%.2f\n",1000/(double)742+0.005);
dec*=100;
dec+=0.5;
int n=(int)dec;
dec=n/100.0;