设有定义:double x=2.12;,以下不能完整输出变量x值的语句是

admin2021-04-28  20

问题 设有定义:double  x=2.12;,以下不能完整输出变量x值的语句是

选项 A、printf("x=%5.0f\n",x);
B、printf("x=%f\n",x);
C、printf("x=%lf\n",x);
D、printf("x=%0.5f\n",x);

答案A

解析 float类型变量有效位数为6~7位,double类型变量有效位数为15~16位。printf函数控制字符%f输出float类型,%lf输出double类型。对于float或double型数据,在指定数据输出宽度的同时,也可以指定小数位的位数,格式为%m.nf,表示数据输出总的宽度为m位,其中小数部分占n位。当数据的小数位多于指定宽度n时,截去右边多余的小数,并对截去的第一位小数做四舍五入处理;而当数据的小数位少于指定宽度n时,在小数的右边补零;当m小于有效位数时,整数部分输出所有有效数字并且自动对齐,小数部分按照n指定位数输出。A选项按照float格式输出数据,宽度为5位,保留小数0位,输出为2,不能完整输出x,选择A选项。B选项按照float格式输出数据,输出为2.120000。C选项按照double格式输出数据,输出为2.120000。D选项按照float格式输出数据,保留小数位数为5,输出为2.12000。
转载请注明原文地址:https://kaotiyun.com/show/jPtp777K
0

最新回复(0)