面向对象程序设计c++程序练习题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、
请编写一个程序:
要求:
1)实现从键盘输入两个数据;
2)然后将两个数据相加,结果输出到控制台上。
二、设计一个函数模板:
要求:
1)其中包括数据成员T a[n]以及对其进行排序的成员函数 sort( );
2)模板参数T可实例化成字符串。
三、
请按照下列要求编写程序:
1)定义基类,在其中定义具有三种不同权限的成员;
2)定义基类的公有派生类,在派生类中定义成员函数操作基类的成员,观察哪种成员可访问。
3)在main()函数中定义派生类对象,操作基类不同成员,观察哪些成员可访问。
四、
编写一个C++程序
要求:
1)用以循环打印语句“Hello C++!”;
2)每打印一次都在语句前面加一个序号,如第二次打印为“2:Hello C++! ”,共循环3次。
五、
请编程实现单例设计模型。
第一题、
#include
using namespace std;
int main()
{
int a,b;
cin>>a>>b;
cout<
system("pause");
return 0;
}
第二题、
#include
#include
using namespace std;
template
void Sort(T* a,int n)
{
int i,j;
T t;
for(i=0;i
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
template
void Print(T* a,int n)
{
int i;
for(i=0;i
int main()
{
string Str[10] = { "Zhang", "Li", "Wang", "Qian", "Zhao", "Wu", "Xu", "Tang", "Shen", "Liang" };
int Int[8] = { 20, 12, 0, -5, 9, -18, 6, 11 };
double Dou[7] = { 3.07, 8.12, -0.45, 6, 10, -9, 7.29 };
Sort
Sort
Sort
Print(Str, 10);
Print(Int, 8);
Print(Dou, 7);
system("pause");
return 0;
}
第三题、
#include
using namespace std;
class A{
public:
void pub_fun(void) {}
char pub_var;
protected:
void pro_fun(void) {}
char pro_var;
private:
void pri_fun(void) {}
char pri_var;
void foo(void)
{
pub_fun();
pub_var = 10;
pro_fun();
pro_var = 10;
pri_fun();
pri_var = 10;
}
};
class B : public A{
void foo(void)
{
pub_fun();
pub_var = 10;
pro_fun();
pro_var = 10;
}
};
int main(int argc, char* argv[])
{
A a;
a.pub_fun();
a.pub_var = 10;
system("pause");
return 0;
}
第四题、
#include
u
sing namespace std;
int main()
{
for (int i = 0; i < 3; ++i)
cout << i + 1<< ": Hello C++!" << endl;
return 0;
}
第五题、
#include
using namespace std;
//经典单例模式实现
class Singleton{
private:
static Singleton *uniqueInstance;//利用一个静态变量来记录Singleton的唯一实例
Singleton(){}; //构造函数私有化
public:
//实例化对象的方法
static Singleton* getInstance() //静态成员函数访问静态成员,即静态实例对象
{
cout << "获取单例对象" << endl;
if (NULL == uniqueInstance) //如果实例对象指针为NULL
uniqueInstance = new Singleton(); //则new一个新的对象
return uniqueInstance;
}
};
Singleton* Singleton::uniqueInstance = NULL;//静态成员变量初始化
int main()
{
Singleton *singletonObj = Singleton::getInstance();
delete singletonObj;
system("pause");
return 0;
}