欢迎来到天天文库
浏览记录
ID:42023576
大小:99.46 KB
页数:8页
时间:2019-09-06
《运算符重载自考习题》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、2000.1019、重载的运算符仍然保持其原来的优先级、结合性和o25、下面程序希望产生的输出为4+3i,但是运行输出是3+3i,请指出错误并改正#includeclasscomplex{intreal;//实部infimag;//虚部public:complex(intr=OJnti=0):real(r)9imag(i){}voidshow(){cout«real«n+M«imag«nin«endl;}complexoperator-H-(){real++;return*this;}};voidmain(){com
2、plexc(2,3);++++C;c3、n;}29.os«fr.den«7r«fr.numos2002.106•如果表达式++i*k中的“++”和J”都是重载的友元运算符,则采用运算符函数调用格式,该表达式还可表示为()A.operator*(i.operator++(),k)B.operator*(operator++(i),k)C>i-operator++().operator*(k)DclassFUN{friendostream&operator«(os4、tream&JFUN);}fim;ostream&operatorvv(ostream&os,FUNf){os.setf(ios::left);returnos;}voidmain(){cout«setfill('*')<5、结果:#includeclassFunArray{int*pa;〃指向一个数组空间intsize;〃数组元素个数public:FunArray(inta[]9intthesize):pa(a),size(thesize){}intSize(){returnsize;}int&operator]](intindex){returnpa6、index-l];}};voidmain(){ints[]={3,7,2,l,5,4};FunArrayma(s,sizeof(s)/sizeof(int));ma[3]=9;for(i7、nti=l;iv=ma.Size();i++)cout«ma[i]«;}2004.103.在下列成对的表达式中,运算结果类型相同的一对是()A.9.0/2.0和9.0/2B.9/2.0和9/2C.9・0/2禾口9/2D.9/2禾口9・0/2・014.如果重载了运算符+,则相应的运算符函数名是o21.下面的类Complex定义中有一处错误,如更正了错误,程序的输出是5+8i。请用下横线标出错误所在行并给出修改意见。12345678////////////////////////#includeh>#include8、>h>classComplex{doublereal;doubleimag;public:Complex(doubler=0-0,doublei=0.0):real(r),imag(i){}voidshow(){cout«real«(imag>=0?'+,:*—*)«fabs(imag)«*1*;}friendComplex&operator+=(Complexcl,Complexc2){//9c1・real+=c2.real;c1jmag+=c2amag;//10returncl;//ll}//12//13//14voidmain(){/9、/15Complexc(3,5);//16c+=Complex(2,3);//17c.show();//18}//192005.1011•下面运算符中,不能被重载的运算符是()A
3、n;}29.os«fr.den«7r«fr.numos2002.106•如果表达式++i*k中的“++”和J”都是重载的友元运算符,则采用运算符函数调用格式,该表达式还可表示为()A.operator*(i.operator++(),k)B.operator*(operator++(i),k)C>i-operator++().operator*(k)DclassFUN{friendostream&operator«(os
4、tream&JFUN);}fim;ostream&operatorvv(ostream&os,FUNf){os.setf(ios::left);returnos;}voidmain(){cout«setfill('*')<5、结果:#includeclassFunArray{int*pa;〃指向一个数组空间intsize;〃数组元素个数public:FunArray(inta[]9intthesize):pa(a),size(thesize){}intSize(){returnsize;}int&operator]](intindex){returnpa6、index-l];}};voidmain(){ints[]={3,7,2,l,5,4};FunArrayma(s,sizeof(s)/sizeof(int));ma[3]=9;for(i7、nti=l;iv=ma.Size();i++)cout«ma[i]«;}2004.103.在下列成对的表达式中,运算结果类型相同的一对是()A.9.0/2.0和9.0/2B.9/2.0和9/2C.9・0/2禾口9/2D.9/2禾口9・0/2・014.如果重载了运算符+,则相应的运算符函数名是o21.下面的类Complex定义中有一处错误,如更正了错误,程序的输出是5+8i。请用下横线标出错误所在行并给出修改意见。12345678////////////////////////#includeh>#include8、>h>classComplex{doublereal;doubleimag;public:Complex(doubler=0-0,doublei=0.0):real(r),imag(i){}voidshow(){cout«real«(imag>=0?'+,:*—*)«fabs(imag)«*1*;}friendComplex&operator+=(Complexcl,Complexc2){//9c1・real+=c2.real;c1jmag+=c2amag;//10returncl;//ll}//12//13//14voidmain(){/9、/15Complexc(3,5);//16c+=Complex(2,3);//17c.show();//18}//192005.1011•下面运算符中,不能被重载的运算符是()A
5、结果:#includeclassFunArray{int*pa;〃指向一个数组空间intsize;〃数组元素个数public:FunArray(inta[]9intthesize):pa(a),size(thesize){}intSize(){returnsize;}int&operator]](intindex){returnpa
6、index-l];}};voidmain(){ints[]={3,7,2,l,5,4};FunArrayma(s,sizeof(s)/sizeof(int));ma[3]=9;for(i
7、nti=l;iv=ma.Size();i++)cout«ma[i]«;}2004.103.在下列成对的表达式中,运算结果类型相同的一对是()A.9.0/2.0和9.0/2B.9/2.0和9/2C.9・0/2禾口9/2D.9/2禾口9・0/2・014.如果重载了运算符+,则相应的运算符函数名是o21.下面的类Complex定义中有一处错误,如更正了错误,程序的输出是5+8i。请用下横线标出错误所在行并给出修改意见。12345678////////////////////////#includeh>#include8、>h>classComplex{doublereal;doubleimag;public:Complex(doubler=0-0,doublei=0.0):real(r),imag(i){}voidshow(){cout«real«(imag>=0?'+,:*—*)«fabs(imag)«*1*;}friendComplex&operator+=(Complexcl,Complexc2){//9c1・real+=c2.real;c1jmag+=c2amag;//10returncl;//ll}//12//13//14voidmain(){/9、/15Complexc(3,5);//16c+=Complex(2,3);//17c.show();//18}//192005.1011•下面运算符中,不能被重载的运算符是()A
8、>h>classComplex{doublereal;doubleimag;public:Complex(doubler=0-0,doublei=0.0):real(r),imag(i){}voidshow(){cout«real«(imag>=0?'+,:*—*)«fabs(imag)«*1*;}friendComplex&operator+=(Complexcl,Complexc2){//9c1・real+=c2.real;c1jmag+=c2amag;//10returncl;//ll}//12//13//14voidmain(){/
9、/15Complexc(3,5);//16c+=Complex(2,3);//17c.show();//18}//192005.1011•下面运算符中,不能被重载的运算符是()A
此文档下载收益归作者所有