问题
单项选择题
执行语句:cout<<setfill(‘*’)<<Setw(10)<<setfill(‘#’)<<left<<123<<“OK”<<end后将输出( )。
A.123* * * * * * * OK
B.123# # # # # # # OK
C.123* * * * * * * * OK* * * * * * * *
D.123# # # # # # # #OK# # # # # # # #
答案
参考答案:B
解析: 函数setfill(char c)用于设置填充字符,在输出数据时,如果数据宽度小于设置的宽度,则空闲位置要用填充字符填满,设置的填充符一直有效,直到再次填充字符为止,如题中调用函数setfill(‘*’)将填充字符设置为’*’,后又调用函数setfill(‘#’)将填充字符设置为’#’。函数setw(int n)用于设置输入输出宽度,宽度设置的效果只对一次输入或输出有效,在完成一次数据的输出成输入后,宽度设置自动恢复为0,如题中语句以宽度10输出嗽据“123”后,字符串“OK”的输出宽度就自动恢复为0了。而且题中输出的对齐方式为在输出宽度内左对齐。本题结果为123# # # # # # OK。