设有定义语句: d(mble x=123.456: 则语句 printf("%6.2f,%3.0f\n",x,x); 的输出结果是( )。

admin2018-06-29  22

问题 设有定义语句:
d(mble x=123.456:
则语句
printf("%6.2f,%3.0f\n",x,x);
的输出结果是(    )。

选项 A、123.46,123.0
B、123.45,123
C、123.46,123
D、123.45,123.0

答案C

解析 对于rtouble类型的实数,可以在printf( )函数的格式化字符串中使用“n1.n2”的形式来指定输出宽度(n1和n2分别代表一个整常数),其中n1指定输出数据的宽度(包括小数点),n2指定小数点后小数位的位数,n2也称为精度;对于格式字符%f,当输出数据的小数位多余n2位时,截取右边多余的小数,并对截取部分的第一位小数做四舍五入处理;当输出数据小数位少于n2时,在小数的最右边补0,使得输出数据的小数部分宽度为n2;如果指定“n1.0”格式,则不输出小数点和小数部分;题意中,%6.2f表示输出6位宽度,2位小数,所以被截取的小数位:0.006四舍五入,结果为123.46;%3.0f表示输出3位宽度,0位小数,结果为123,本题答案为C。
转载请注明原文地址:https://jikaoti.com/ti/dDa0FFFM
0

最新回复(0)