2017上半年程序员考试案例分析真题(6)

    作者:课课家教育更新于: 2018-05-13 21:39:04

    软考,您想通过吗?一次通过才是硬道理

           课课家小编为大家整理了2017上半年程序员考试案例分析真题,以下为第六部分。

     

           试题六(共15分)

           阅读下列说明和C++代码,填补代码中的空缺,将解答填入答题纸的对应栏内。

           【说明】

           以下C++代码实现一个简单客户关系管理系统(CrM)中通过工厂(Customerfactory)对象来创建客户(Customer)对象的功能。客户分为创建成功的客户(realCustomer)和空客户(NullCustomer)。空客户对象是当不满足特定条件时创建或获取的对象。类间关系如图6-1所示。

           

           【C++代码】

           #include<iostream>

           #include<string>

           using namespace std;

           class Customer{

           protected:

           string name;

           public:

           (1)boll isNil()=0;

           (2)string getName()=0;

           ﹜;

           class realCustomer(3){

           public:

           realCustomer(string name){this->name=name;﹜

           bool isNil(){return false;﹜

           string getName(){return name;﹜

           ﹜;

           class NullCustomer(4){

           public:

           bool isNil(){return true;﹜

           string getName(){return〝Not Available in Customer Database〞;﹜

           ﹜;

           class Customerfactory{

           public:

           string names[3]={〝rob〞,〝Joe〞,〝Julie〞﹜;

           public:

           Customer*getCustomer(string name){

           for(int i=0;i<3;i++){

           if(names[i].(5)){

           return new realCustomer(name);

           ﹜

           ﹜

           return(6);

           ﹜

           ﹜;

           class CrM{

           public:

           void getCustomer(){

           Customerfactory*(7);

           Customer*customer1=cf->getCustomer(〝rob〞);

           Customer*customer2=cf->getCustomer(〝Bob〞);

           Customer*customer3=cf->getCustomer(〝Julie〞);

           Customer*customer4=cf->getCustomer(〝Laura〞);

           cout<<〝Customers〞<

           cout<getName()<

           cout<getName()<

           cout<getName()<

           cout<getName()<

           delete cf;

           ﹜

           ﹜;

           int main(){

           CrM*crs=new CrM();

           crs->getCustomer();

           delete crs;

           return 0;

           ﹜

           /*程序输出为:

           Customers

           rob

           Not Available in Customer Database

           Julie

           Not Available in Customer Database

           */

           >>>>返回目录:2017上半年程序员考试案例分析真题(汇总)

           想要报考2018年软考的朋友现在就可以开始备考了,可以报名课课家软考学院,课课家软考学院含有软考各科目赠送考试:辅导教材、历年真题、考前冲剌资料、在线模拟测试题库,还有老师专属答疑指导等,帮助大家顺利通过考试。

     >>>>>>点击进入软考报名专题

课课家教育

未登录

1