C++问题,求解
01.011 365 14996540.12依据空格判断分成三个字符串传到数组里存储,并且判断第一个字符串有没有小数点,有小数点只保留小数点后一位,没有小数点全保留,麻烦把代码写一下,先说声谢谢了
2012-07-11 16:18

2012-07-12 13:38
程序代码:#include <stdio.h>
int main()
{
const char* str = "01.011 365 14996540.12";
double a;
int b;
double c;
if( 3 == sscanf(str,"%lf%d%lf",&a,&b,&c) )
{
a = (int)(a*10)/10.0;
printf( "%.1lf\t%d\t%lf\n", a, b, c );
}
return 0;
}真正的问题在于“有小数点只保留小数点后一位,没有小数点全保留”这一句话,计算机中使用的是浮点数,什么“保留小数点后一位”等都是瞎扯蛋(除非自己写个可以无限精度的自定义类型)
2012-07-12 14:50

2012-07-12 15:59