问题 单项选择题

程序段:int x=12; double y=3.141593; printf("%d%8.6f", x, y);的输出结果是

A.123.141593

B.12 3.141593

C.12,3.141593

D.123.141593

答案

参考答案:A

解析: printf函数的两个格式控制符之间没有空格和逗号,故选项B、C不正确;输出格式控制符%m.nf表示指定输出的实型数据的宽度为m(包含小数点)并保留n位小数。当输出数据的小数位大于n时,最后一位按照四舍五入进行截取;若输出数据的小数位小于n时,在小数的最右边补0;若给出的总宽度m小于n加上整数位数和小数点,则自动突破m的限制;反之,数字右对齐,左边补空格。本题中3.141593数值长度为8,小数位数为6,因此左端没有空格。

填空题
多项选择题