1个回答
展开全部
C语言中printf函数format参数有处理小数位的方式。
在format参数中,%f表示输出一个浮点类型的数,但如果想保留位数,就可以在百分号后面加一个小数点以及保留的位数,如输出浮点数1.948并保留一位小数,可以这么写:
printf("%.1f",1.948);
这是format参数格式的一种。顺带一说,保留位数小数会以四舍五入的方式保留,比如输出浮点数1.956并保留一位小数,可以这么写:
printf("%.1f",1.956);
输出结果因四舍五入到第一位,结果为2.0。
对了,我看了一下你的图片,发现你用的是C++而不是C语言。在此说一下,C++保留位数输出是用setprecision函数,位于iomanip头文件里(这个头文件包含了所有格式输出的方式,但个人认为格式化输出的话C语言的printf函数用起来更顺手)。比如拿之前的输出1.948保留一位,C++中是这样写:
cout << fixed << setprecision(1) << 1.948;
同C语言一样的,这个函数输出调整也是四舍五入的。
在format参数中,%f表示输出一个浮点类型的数,但如果想保留位数,就可以在百分号后面加一个小数点以及保留的位数,如输出浮点数1.948并保留一位小数,可以这么写:
printf("%.1f",1.948);
这是format参数格式的一种。顺带一说,保留位数小数会以四舍五入的方式保留,比如输出浮点数1.956并保留一位小数,可以这么写:
printf("%.1f",1.956);
输出结果因四舍五入到第一位,结果为2.0。
对了,我看了一下你的图片,发现你用的是C++而不是C语言。在此说一下,C++保留位数输出是用setprecision函数,位于iomanip头文件里(这个头文件包含了所有格式输出的方式,但个人认为格式化输出的话C语言的printf函数用起来更顺手)。比如拿之前的输出1.948保留一位,C++中是这样写:
cout << fixed << setprecision(1) << 1.948;
同C语言一样的,这个函数输出调整也是四舍五入的。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询