关闭

第十三周项目2-动物这样叫——1

136人阅读 评论(0) 收藏 举报

  1. /* 
  2.  
  3. *Copyright (c) 2016,烟台大学计算机学院 
  4.  
  5. *All rights reserved. 
  6.  
  7. *文件名称 : 
  8.  
  9. *作 者 : 刘默涵 
  10.  
  11. *完成日期 : 2016年6月1号 
  12.  
  13. *版 本 号 : v6.0 
  14.  
  15. * 
  16.  
  17. *问题描述 : 根据给出的main()函数和运行结果的提示,设计出相关的各个类,注意观察运行结果,提取出每个类中需要的数据成员,并匹配上需要的成员函数。 
  18.  
  19. */  
  20.   
  21.   
  22. #include<iostream>  
  23. using namespace std;  
  24. class Animal  
  25. {  
  26. public:  
  27.     Animal(){}  
  28.     virtual void cry()  
  29.     {  
  30.         cout<<"不知哪种动物叫,叫我如何叫?"<<endl;  
  31.     }  
  32.   
  33. };  
  34.   
  35. class Mouse:public Animal  
  36. {  
  37. public:  
  38.     Mouse(string nam,char s):name(nam),c(s){}  
  39.     void cry()  
  40.     {  
  41.         cout<<"我叫"<<name<<",是一只";  
  42.          if(c=='f')cout<<"女";  
  43.          else cout<<"男";  
  44.         cout<<"老鼠,我的叫声是:吱吱吱!"<<endl;  
  45.     }  
  46. protected:  
  47.     string name;  
  48.     char c;  
  49. };  
  50. class Cat:public Animal  
  51. {  
  52. public:  
  53.     Cat(string nam):name(nam){}  
  54.     void cry()  
  55.     {  
  56.         cout<<"我叫"<<name<<",";  
  57.         cout<<"是一只猫,我的叫声是:喵喵喵!"<<endl;  
  58.     }  
  59. protected:  
  60.     string name;  
  61. };  
  62. class Dog:public Animal  
  63. {  
  64. public:  
  65.     Dog(string nam):name(nam){}  
  66.     void cry()  
  67.     {  
  68.         cout<<"我叫"<<name<<",";  
  69.         cout<<"是一只狗,我的叫声是:汪汪汪!"<<endl;  
  70.     }  
  71. protected:  
  72.     string name;  
  73. };  
  74. class Giraffe:public Animal  
  75. {  
  76. public:  
  77.     Giraffe(string nam,char s):name(nam),c(s){}  
  78.     void cry()  
  79.     {  
  80.         cout<<"我叫"<<name<<",是一只";  
  81.          if(c=='f')cout<<"女";  
  82.          else cout<<"男";  
  83.         cout<<"长颈鹿,我的脖子太长,发不出声音来!"<<endl;  
  84.     }  
  85. protected:  
  86.     string name;  
  87.     char c;  
  88. };  
  89. int main()  
  90. {  
  91.     Animal *p;  
  92.     p= new Animal();  
  93.     p->cry();  
  94.     Mouse m1("Jerry",'m');  
  95.     p=&m1;  
  96.     p->cry();  
  97.     Mouse m2("Jemmy",'f');  
  98.     p=&m2;  
  99.     p->cry();  
  100.     Cat c1("Tom");  
  101.     p=&c1;  
  102.     p->cry();  
  103.     Dog d1("Droopy");  
  104.     p=&d1;  
  105.     p->cry();  
  106.     Giraffe g1("Gill",'m');  
  107.     p=&g1;  
  108.     p->cry();  
  109.     return 0;  
  110. }  

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:7701次
    • 积分:568
    • 等级:
    • 排名:千里之外
    • 原创:52篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条