问题
单项选择题
如下程序的输出结果是
#include<iostream>
#include<iomanip>
using namespace std;
class CSum
int x,y;
public:
CSum(int x0,int y0):X(x0),y(y0)
friend ostream& operator<<(ostream& os,const CSum& x
A.
os<<setw(5)<<xa.x+xa.y:
return os;
;
int main( )
CSum y(3,5);
cout<<setfill(’*’)<<8;
cout<<y;
return 0;
A) 88
B.****88
C.****8****8
D.8****8
答案
参考答案:D
解析: 输出流控制中,如果没有指定对齐方式,则默认为左对齐、右填充,CSum类使“<<”运算符出栈,并将输出控制为宽度为5,cout<<setfill(’*’)<<8;执行时就打印8****,然后执行cout<<y;打印8,故答案为D。