自定义指定位四舍五入的函数:编写函数 float fun(double h),
实现对变量h中的值保留2位小数,并对第三位进行四舍五入(规
定 h 中的值为正数)。例如, h 值为 10.4367,则函数返回 10.44。
int a;
a=h*1000; //扩大1000倍,并转换为int型
if(a%10>=5) a+=10; //若千分位大于等于5,则十分位进1
a/=10; //舍弃千分位后的部分并缩小10倍
return ((float)a)/100; //转换为Float型并缩小100倍
a=h*1000; //扩大1000倍,并转换为int型
if(a%10>=5) a+=10; //若千分位大于等于5,则十分位进1
a/=10; //舍弃千分位后的部分并缩小10倍
return ((float)a)/100; //转换为Float型并缩小100倍
参考资料:如果您的回答是从其他地方引用,请表明出处
温馨提示:答案为网友推荐,仅供参考
第1个回答 2019-04-28
scanf("%d",&a);改为:
scanf("%lf",&a);
printf("结果是:%2f\n",a);改为:
printf("结果是:%.2f\n",a);
%2f
是按2位输出,%.2f是按小数部分保留两位输出,一失足成千古恨啊。小心呀
scanf("%lf",&a);
printf("结果是:%2f\n",a);改为:
printf("结果是:%.2f\n",a);
%2f
是按2位输出,%.2f是按小数部分保留两位输出,一失足成千古恨啊。小心呀
第2个回答 2009-11-21
h=1000*h;h=(int)h;if(h%10>4)h=(h/10+1)/100;else h=(h/10)/100;return h;
参考资料:如果您的回答是从其他地方引用,请表明出处