欢迎来到天天文库
浏览记录
ID:55811924
大小:85.00 KB
页数:10页
时间:2020-06-08
《面向对象方法与c++作业.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、《高级语言C++程序设计》作业《面向对象方法与C++》作业一、填空题1.若char*string=”test”;则如果要输出指针值,正确的语句是。2.在重载“[]”运算符时,必须使用函数重载。3.当用public继承时,基类的public成员成为派生类的成员,基类的protected成员成为派生类的成员。4.可以赋给指针的唯一整数是。5.在重载“=”运算符时,必须使用函数重载。6.以下程序:intc=10;cout.flags(ios::hex
2、ios::showbase);cout<3、和protected成员都将成为派生类的成员。8.在main函数中出现的以下语句:max=Max(a,Max(b,c));是一个函数调用的语句。9.头文件声明和定义了重要的文件处理操作服务。10.关键字表示类的静态成员。11.当一个成员函数定义在类的声明外部时,函数名之前要加上名称和运算符。12.在C++中,虚基类的引入是为了实现继承。二、判断题1.在以下语句中:cin>>XXXX;XXXX必须是一个变量名,而不能是一个任意表达式。()2.以下声明将不会导致编译错误。()enumGradeType{'A','B','C','D','E','F'};3.在C4、++里,派生类的构造函数先于其基类的构造函数执行。()4.C++中的所有函数都是传值调用。()5.在类time中声明如下的函数原型:void~time();()6.以下程序:classCA{public:virtualvoiddis()=0;};classCB:publicCA{public:voidset(intm){k=m;}protected:intk;};voidmain(){CBb;}是正确的。()7.函数模板能够定义一个在不同数据类型基础上完成同一任务的函数。()8.以下语句:char*string=”test”;delete[]string;5、是正确的。()第10页共10页《高级语言C++程序设计》作业9.一个有指针数据成员的类必须要包含的成员函数有:初始化构造函数,析构函数,拷贝构造函数和赋值运算符函数。()10.抽象基类中的所有虚函数都要声明为纯虚函数。()11.以下语句:char*string=newchar[10];strcpy(string,”test”);//…delete[]string;是正确的。()12.枚举类型变量的值可以直接进行输入、输出。()三、读程题1.下面程序在执行过程中,若顺序输入十个整数:12345678910,其结果是什么。#include6、>classstack;classnode{intdata;node*prev;public:node(intd,node*n){data=d;prev=n;}friendclassstack;};classstack{node*top;public:stack(){top=0;}voidpush(inti){node*n=newnode(i,top);top=n;}intpop(){node*t=top;if(top){top=top->prev;intc=t->data;deletet;returnc;}return0;}};voidmain(){in7、tc;stacks;for(inti=0;i<10;i++){cin>>c;s.push(c);}for(i=0;i<10;i++)cout<#includeclassIncrement{public:Increment(int=0,int=1);voidaddIncrement(){count+=increment;}voidprint()const;private:intcount;const8、intincrement;};Increment::Increment(intc,inti):increment(i){count=c;}voidIncrement::print()const{cout<<"count="<9、();cout<<"after:"<
3、和protected成员都将成为派生类的成员。8.在main函数中出现的以下语句:max=Max(a,Max(b,c));是一个函数调用的语句。9.头文件声明和定义了重要的文件处理操作服务。10.关键字表示类的静态成员。11.当一个成员函数定义在类的声明外部时,函数名之前要加上名称和运算符。12.在C++中,虚基类的引入是为了实现继承。二、判断题1.在以下语句中:cin>>XXXX;XXXX必须是一个变量名,而不能是一个任意表达式。()2.以下声明将不会导致编译错误。()enumGradeType{'A','B','C','D','E','F'};3.在C
4、++里,派生类的构造函数先于其基类的构造函数执行。()4.C++中的所有函数都是传值调用。()5.在类time中声明如下的函数原型:void~time();()6.以下程序:classCA{public:virtualvoiddis()=0;};classCB:publicCA{public:voidset(intm){k=m;}protected:intk;};voidmain(){CBb;}是正确的。()7.函数模板能够定义一个在不同数据类型基础上完成同一任务的函数。()8.以下语句:char*string=”test”;delete[]string;
5、是正确的。()第10页共10页《高级语言C++程序设计》作业9.一个有指针数据成员的类必须要包含的成员函数有:初始化构造函数,析构函数,拷贝构造函数和赋值运算符函数。()10.抽象基类中的所有虚函数都要声明为纯虚函数。()11.以下语句:char*string=newchar[10];strcpy(string,”test”);//…delete[]string;是正确的。()12.枚举类型变量的值可以直接进行输入、输出。()三、读程题1.下面程序在执行过程中,若顺序输入十个整数:12345678910,其结果是什么。#include6、>classstack;classnode{intdata;node*prev;public:node(intd,node*n){data=d;prev=n;}friendclassstack;};classstack{node*top;public:stack(){top=0;}voidpush(inti){node*n=newnode(i,top);top=n;}intpop(){node*t=top;if(top){top=top->prev;intc=t->data;deletet;returnc;}return0;}};voidmain(){in7、tc;stacks;for(inti=0;i<10;i++){cin>>c;s.push(c);}for(i=0;i<10;i++)cout<#includeclassIncrement{public:Increment(int=0,int=1);voidaddIncrement(){count+=increment;}voidprint()const;private:intcount;const8、intincrement;};Increment::Increment(intc,inti):increment(i){count=c;}voidIncrement::print()const{cout<<"count="<9、();cout<<"after:"<
6、>classstack;classnode{intdata;node*prev;public:node(intd,node*n){data=d;prev=n;}friendclassstack;};classstack{node*top;public:stack(){top=0;}voidpush(inti){node*n=newnode(i,top);top=n;}intpop(){node*t=top;if(top){top=top->prev;intc=t->data;deletet;returnc;}return0;}};voidmain(){in
7、tc;stacks;for(inti=0;i<10;i++){cin>>c;s.push(c);}for(i=0;i<10;i++)cout<#includeclassIncrement{public:Increment(int=0,int=1);voidaddIncrement(){count+=increment;}voidprint()const;private:intcount;const
8、intincrement;};Increment::Increment(intc,inti):increment(i){count=c;}voidIncrement::print()const{cout<<"count="<9、();cout<<"after:"<
9、();cout<<"after:"<
此文档下载收益归作者所有