设有定义:floatx=123.4567;则执行下列语句后的输出结果是—— printf("%f ",(int)(x*100+0.5)/100.0);

设有定义:floatx=123.4567;则执行下列语句后的输出结果是—— printf("%f ",(int)(x*100+0.5)/100.0);

题目
设有定义:floatx=123.4567;则执行下列语句后的输出结果是—— printf("%f ",(int)(x*100+0.5)/100.0);
答案
#define floatx 123.4567
main
{
#ifdef floatx
{
printf("%f ",(int)(x*100+0.5)/100.0);
}
getchar();
}
兄弟看来你没有理解啊,我帮你细细的分析一下吧..
首先 printf("%f ",(int)(x*100+0.5)/100.0);
%f是以单精度的形式输出,知道的吧?
(int)(x*100+0.5)/100.0中可以拆分来看,(int)(x*100+0.5)是一个强制类型转换成整型,结果为
(int)(123.4567*100+0.5)即等于(int)(12346.17)即等于12346
我们再分析12346/100.0即等于123.46,关键输出的结果要以单精度float的形式输出来,单精度的小数点精确为6位,即结果为123.460000
举一反三
我想写一篇关于奥巴马的演讲的文章,写哪一篇好呢?为什么好
奥巴马演讲不用看稿子.为什么中国领导演讲要看?
想找英语初三上学期的首字母填空练习……
英语翻译
1,人们染上烟瘾,最终因吸烟使自己丧命.
最新试题
热门考点

超级试练试题库

© 2017-2019 超级试练试题库,All Rights Reserved.