2954: A改错题--是虫还是草

时间限制: 1 Sec  内存限制: 128 MB

提交: 83  解决: 55

题目描述

冬虫夏草为虫体与菌座相连而成,冬天是虫子,夏天却是草。根据类生物(biological),虫(insect),草(grass),虫草(insectgrass)的继承关系,输出生物的名字。

注:本题只需要提交修改和完善部分的代码,请按照C++方式提交。

#include <iostream>

using namespace std;

class Biological

{

public:

    Biological(string name) { this->name=name; }

    virtual void Say() =0;

    virtual ~Biological() {}

    string GetName() { return name; }

private:

    string name;

};

/*   修改和完善该部分代码

class Insect:virtual public Biological

{

public:

    Insect(string name):Biological(name) {}

    virtual void Say() { cout<<this->GetName()<<"是虫"<<endl; }

    virtual ~Insect() {}

};

class Grass:virtual public Biological

{

public:

    Grass(string name):Biological(name) {}

    virtual ~Grass() {}

};

class InsectGrass:public Insect,public Grass

{

public:

    InsectGrass(string name):Insect(name),Grass(name) {}

    virtual ~InsectGrass() {}

};

*/

int main()

{

    Biological *p[3];

    string name;

    getline(cin,name);

    p[0]=new Insect(name);

    getline(cin,name);

    p[1]=new Grass(name);

    getline(cin,name);

    p[2]=new InsectGrass(name);

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

    {

        p[i]->Say();

        delete p[i];

    }

    return 0;

}

输入

第一行,虫的名字

第二行,草的名字

第三行,虫草的名字

输出

每行输出相应的名字及类别。

样例输入

Coccinellidae
Prunella vulgaris
Cordyceps sinensis

样例输出

Coccinellidae是虫
Prunella vulgaris是草
Cordyceps sinensis是虫也是草

你  离  开  了  ,  我  的  世  界  里  只  剩  下  雨  。  。  。

#include <iostream>
using namespace std;
class Biological
{
public:
Biological(string name)
{
this->name=name;
}
virtual void Say() =0;
virtual ~Biological() {}
string GetName()
{
return name;
} private:
string name;
};
class Insect:virtual public Biological
{
public:
Insect(string name):Biological(name) {}
void Say()
{
cout<<this->GetName()<<"是虫"<<endl;
}
virtual ~Insect() {}
};
class Grass:virtual public Biological
{
public:
Grass(string name):Biological(name) {}
void Say()
{
cout<<this->GetName()<<"是草"<<endl;
}
virtual ~Grass() {}
};
class InsectGrass:public Insect,public Grass
{
public:
InsectGrass(string name):Insect(name),Grass(name),Biological(name) {}
void Say()
{
cout<<this->GetName()<<"是虫也是草"<<endl;
}
virtual ~InsectGrass() {}
};
int main()
{
Biological *p[3];
string name;
getline(cin,name);
p[0]=new Insect(name);
getline(cin,name);
p[1]=new Grass(name);
getline(cin,name);
p[2]=new InsectGrass(name);
for(int i=0; i<3; i++)
{
p[i]->Say();
delete p[i];
}
return 0;
}

YTU 2954: A改错题--是虫还是草的更多相关文章

  1. YTU 2610: A改错题--体检情况分析

    2610: A改错题--体检情况分析 时间限制: 1 Sec  内存限制: 128 MB 提交: 233  解决: 161 题目描述 注:本题只需要提交标记为修改部分之间的代码,请按照C++方式提交. ...

  2. YTU 2609: A改错题--学生信息的输入和输出

    2609: A改错题--学生信息的输入和输出 时间限制: 1 Sec  内存限制: 128 MB 提交: 238  解决: 157 题目描述 注:本题只需要提交标记为修改部分之间的代码,请按照C++方 ...

  3. YTU 2955: A改错题--销售部的打印机

    2955: A改错题--销售部的打印机 时间限制: 1 Sec  内存限制: 128 MB 提交: 61  解决: 47 题目描述 销售部新进了一台快速打印机,使用频率很高.为了能够对打印情况进行统计 ...

  4. YTU 2580: 改错题----修改revert函数

    2580: 改错题----修改revert函数 时间限制: 1 Sec  内存限制: 128 MB 提交: 194  解决: 82 题目描述 修改revert函数,实现输入N个数,顺序倒置后输出 #i ...

  5. YTU 2844: 改错题A-看电影

    2844: 改错题A-看电影 时间限制: 1 Sec  内存限制: 128 MB 提交: 69  解决: 47 题目描述 注:本题只需要提交标记为修改部分之间的代码,请按照C++方式提交. 小平家长为 ...

  6. YTU 2838: 改错题AB-装置连接

    2838: 改错题AB-装置连接 时间限制: 1 Sec  内存限制: 128 MB 提交: 81  解决: 49 题目描述 注:本题只需要提交标记为修改部分之间的代码,请按照C++方式提交. 有AB ...

  7. YTU 2960: 改错题--小鼠标,你要干什吗?

    2960: 改错题--小鼠标,你要干什吗? 时间限制: 1 Sec  内存限制: 128 MB 提交: 118  解决: 62 题目描述 鼠标双击不同的图标产生不同的效果,比如双击文档(documen ...

  8. YTU 2639: 改错题:类中私有成员的访问

    2639: 改错题:类中私有成员的访问 时间限制: 1 Sec  内存限制: 128 MB 提交: 431  解决: 297 题目描述 /* 改错题: 设计一个日期类和时间类,并编写全局函数displ ...

  9. YTU 2622: B 虚拟继承(虚基类)-沙发床(改错题)

    2622: B 虚拟继承(虚基类)-沙发床(改错题) 时间限制: 1 Sec  内存限制: 128 MB 提交: 487  解决: 393 题目描述 有一种特殊的床,既能当床(Bed)用又能当沙发(S ...

随机推荐

  1. Flash学习笔记(01)

    一:动画基础原理 二:Flash的动画的制作方式 三:元件与实例的关系 四:Flash实例     可以做出网上常见的网页动画   Flash能为我们做什么 1.网站.贺卡.配乐短片.短剧.游戏.教学 ...

  2. URL 路由

    一般情况下,一个 URL 字符串和它对应的控制器中类和方法是一一对应的关系. URL 中的每一段通常遵循下面的规则: example.com/class/function/id/ 但是有时候,你可能想 ...

  3. 虚拟机(Virtual Machine)和容器(Container)的对比

    目前云计算平台常用的虚拟化技术有虚拟机(Virtual Machine)和容器(Container)两种.虚拟机已经是比较成熟的技术,容器技术作为下一代虚拟化技术,国内的各厂商应用还不广,但似乎其代表 ...

  4. [NOIP2000] 提高组 洛谷P1019 单词接龙

    题目描述 单词接龙是一个与我们经常玩的成语接龙相类似的游戏,现在我们已知一组单词,且给定一个开头的字母,要求出以这个字母开头的最长的“龙”(每个单词都最多在“龙”中出现两次),在两个单词相连时,其重合 ...

  5. C++内存分配方式(——选自:C++内存管理技术内幕)

    C++内存分配的区: 1.栈:程序运行时分配的,局部变量,以及传入的参数等存储的地方,在程序结束的时候会回收 2.堆:new分配,由delete释放 3.自由存储区:malloc分配 4.全局/静态存 ...

  6. iOS React Native 环境的搭建

    react native 的官网:http://reactnative.cn/docs/0.47/getting-started.html#content  --iOS如何搭建mac版的环境 1.配置 ...

  7. [bzoj2780][Spoj8093]Sevenk Love Oimaster_广义后缀自动机

    Sevenk Love Oimaster bzoj-2780 Spoj-8093 题目大意:给定$n$个大串和$m$次询问,每次给出一个字符串$s$询问在多少个大串中出现过. 注释:$1\le n\l ...

  8. List和Map、Set的区别

    首先 List 和 Set 是存储单列数据的集合,Map 是存储键和值这样的双列数据的集合:List 中存储的数据是有顺序,并且允许重复:Map 中存储的数据是没有顺序的,其键是不能重复的,它的值是可 ...

  9. 巧用MySQL AHI加速神器,让你的InnoDB查询飞起来!

    DBAPLUS  http://mp.weixin.qq.com/s/cIjQIz-ZngSYJ3k2ZBBSsg

  10. 【python】SHA1 算法

    http://blog.163.com/sh_wenfen/blog/static/99708242007231103936938/