C++上机期末考题答案.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C上机期末考题答案

一 改错 阅读下列程序,改正程序中的错误。 (1) class A {private: int x,y; public: void fun(int i,int j=0) {x=i;y=j;} void show() {coutx“”yendl;} }; void main() {A a1; a1.fun(2); a1.show(); } (2) #include iostream class Date; class Time {public: Time(int h,int m,int s) {hour=h,minute=m,sec=s;} void show(Date d); private: int hour,minute,sec; }; class Date {public: Date(int m,int d,int y) {month=m,day=d,year=y;} friend void Time::show(Date ); private: int month,day,year; }; void Time::show(Date d) {coutd.month -d.day-d.yearendl; couthour:minute:secendl;} void main() {Time t1(9,23,50); Date d1(12,20,2008); t1.show(d1);} (3) #include iostream.h class Test {private: int x,y=20; static int m; public: Test(int i,int j){x=i,y=j;} int getx(){return x;} int gety(){return y;} static int f(){return m;} }; int Test::m=0; void main() {Test mt(10,20); coutmt.x endl; coutmt.y endl; } 二.填空题 1.一个类的头文件如下所示,num初始化值为5,程序产生对象T,且修改num为10,并使用show()函数输出num的值10。 #include iostream.h class Test {private: static int num; public: Test(int); void show(); }; _________ Test::Test(int n) {num=n;} void Test::show() {coutnumendl;} void main() {Test t(10); _________ } 答案:int Test::num=5;,t.show(); (2)在下划线处填上缺少的部分。 #include iostream.h class A {int a,b; public: _____;//定义构造函数,使参数i和j的默认值为0 {a=i;b=j;}//在函数体中用i初始化a,用j初始化b }; main() {A *p; _____;//调用带参构造函数生成由p指向的动态对象 //使a和b成员分别被初始化为4和5 } 答案:A(int i=0,int j=0),p=new A(4,5) 解析]构造函数带默认参数为0,使用new运算符动态分配对象空间,同时初始对象成员值4,5。 三读程序结果 1. 给出下面程序输出结果。 #include iostream.h class example {int a; public: example(int b=5){a=b++;} void print(){a=a+1;cout a;} void print()const {coutaendl;} }; void main() {example x; const example y(2); x.print(); y.print(); } 答案:62[解析]x是普通对象,调用普通的print函数;而y常对象,调用常成员函数。 (2) #include iostream.h class My {public: My(){coutA;} My (char c){coutc;} ~My (){coutB;}}; int main() {My p1,*p2; p2=new Myclass[2]; delete p2; return 0;} 答案 AAAXXB (3) class A {float x; public: A(int a) { x=a; cout调用了A的构造函数\n; } ~A() { cout调用了A的析构函数\n; }}; class B{ float

文档评论(0)

2017ll + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档