OJ第三批——Problem M: 虚基类练习:动物

Java-Study 基础环境搭建。 阅读详情

问题及代码:

Problem M: 虚基类练习:动物

Time Limit: 1 Sec   Memory Limit: 128 MB
Submit: 958   Solved: 533
[ Submit][ Status][ Web Board]

Description

长期的物种进化使两栖动物既能活跃在陆地上,又能游动于水中。利用虚基类建立一个类的多重继承,包括动物(animal,属性有体长,体重和性别),陆生动物(ter_animal,属性增加了奔跑速度),水生动物(aqu_animal,属性增加了游泳速度)和两栖动物(amp_animal)。其中两栖动物保留了陆生动物和水生动物的属性。

Input

两栖动物的体长,体重,性别,游泳速度,奔跑速度(running_speed)

Output

初始化的两栖动物的体长,体重,性别,游泳速度,奔跑速度(running_speed)和输入的两栖动物的体长,体重,性别,游泳速度,奔跑速度(running_speed)

Sample Input

52
22
f
102
122

Sample Output

height:50
weight:20
sex:m
swimming_speed:100
running_speed:120

height:52
weight:22
sex:f
swimming_speed:102
running_speed:122

HINT

前置代码及类型定义已给定如下,提交时不需要包含,会自动添加到程序前部


/*C++代码*/


#include <iostream>


using namespace std;


class animal


{


protected:


    int height;  //身高或体长


    int weight;  //体重


    char sex;   //性别


public:


    animal(){}


    animal(int h,int w,char s):


        height(h),weight(w),sex(s){}


};


class aqu_animal:virtual public animal  //水生动物


{


protected:


    int swimming_speed;  //游泳速度


public:


    aqu_animal(){}


    aqu_animal(int h,int w,char s,int s_p):


        animal(h,w,s),swimming_speed(s_p){}


};


主函数已给定如下,提交时不需要包含,会自动添加到程序尾部



/*C++代码*/




int main()


{


    amp_animal a1(50,20,'m',100,120);


    amp_animal a2;


    a2.input();


    a1.show();


    cout<<endl;


    a2.show();


    return 0;


}

 

 

#include <iostream>

using namespace std;
class animal
{
protected:
    int height;  //身高或体长
    int weight;  //体重
    char sex;   //性别
public:
    animal() {}
    animal(int h,int w,char s):
        height(h),weight(w),sex(s) {}
};

class aqu_animal:virtual public animal  //水生动物
{
protected:
    int swimming_speed;  //游泳速度
public:
    aqu_animal() {}
    aqu_animal(int h,int w,char s,int s_p):
        animal(h,w,s),swimming_speed(s_p) {}
};

class ter_animal:virtual public animal
{
protected:
    int running_speed;
public:
    ter_animal() {}
    ter_animal(int h,int w,char s,int r_s):
        animal(h,w,s),running_speed(r_s) {}
};

class amp_animal:public ter_animal,public aqu_animal
{
public:
    amp_animal() {}
    amp_animal(int h,int w,char s,int s_p,int r_s):
        animal(h,w,s),aqu_animal(h,w,s,s_p),ter_animal(h,w,s,r_s) {}
    void input();
    void show();
private:

};

void amp_animal::input()
{
    cin>>height>>weight>>sex>>swimming_speed>>running_speed;
}

void amp_animal::show()
{
    cout<<"height:"<<height<<endl;
    cout<<"weight:"<<weight<<endl;
    cout<<"sex:"<<sex<<endl;
    cout<<"swimming_speed:"<<swimming_speed<<endl;
    cout<<"running_speed:"<<running_speed<<endl;
}
int main()
{
    amp_animal a1(50,20,'m',100,120);
    amp_animal a2;
    a2.input();
    a1.show();
    cout<<endl;
    a2.show();
    return 0;
}


 

 

 

运行结果:

c++ 虚基类和虚函数 代码 c++ 虚基类和虚函数+代码.有一个案例,里面有源代码。看完就懂什么叫c++ 虚基类和虚函数了 立即下载

相关推荐

多态练习,一个求动物类的程序代码

一个比较简单的程序代码,效果较好,visual stdio 2008下运行

虚继承(animal)

描述 长期的物种进化使两栖动物既能活跃在陆地上,又能游动于水中。利用虚基类建立一个类的多重继承,包括动物(animal,属性有体长,体重和性别),陆生动物(ter_animal,属性增加了奔跑速度),水生动物(aqu_animal,属性增加了游泳速度)和两栖动物(amp_animal)。其中两栖动物保留了陆生动物和水生动物的属性。 要求: animal只有带参的构造函数。其他函数根据需要自行设置 输入 两栖动物的体长,体重,性别,游泳速度,奔跑速度(running_speed) 输出 初始.

C_Dreamy的博客 864

解锁医疗AI密码:医疗人工智能专业大学四年学习路径

医疗AI人才培养路径解析 本文系统梳理了医疗人工智能专业四年培养方案,分为基础、进阶、应用和拓展四个阶段: 大一聚焦基础学科,涵盖高等数学、医学概论、Python编程等核心课程,辅以医学数据认知实习。大二深入机器学习和医学数据处理领域,学习监督/无监督学习算法及医学影像分析技术。大三进入深度学习阶段,掌握CNN/RNN等神经网络模型,并实践医疗AI应用开发。大四关注前沿技术如大模型在医疗中的应用,完成毕业设计与企业实习。 课程体系强调医工交叉,每学期均配置实践环节,从基础编程到参与真实医疗AI项目,逐步培养

AllenLV的博客 2501

虚基类——动物

问题及代码: /*。 *Copyright(c)2014,烟台大学计算机学院 *All right reserved, *文件名:test.cpp *作者:liu_feng_zi_ *完成日期:2015年6月25日 *版本号:v1.0 *问题描述:虚基类————动物。长期的物种进化使两栖动物既能活跃在陆地上,又能游动于水中。 利用虚基类建立一个类的多重继承,包括动物(animal,属性有体长,...

liu_feng_zi_的专栏 701

proteus仿真51单片机操作指南:串口通信仿真配置详解

深入讲解如何在proteus仿真51单片机中实现串口通信,涵盖虚拟串口设置、电路连接与调试技巧,帮助开发者高效完成通信仿真验证。

weixin_36197669的博客 570

Unity 面试篇|(三)设计模式篇 【全面总结 | 持续更新 | 建议收藏】

设计模式是一套被反复使用、多数人知晓、经过分类编目、代码设计经验的总结。设计模式与方法或库的使用方式不同, 你很难直接在自己的程序中套用某个设计模式。模式并不是一段特定的代码, 而是解决特定问题的一般性概念。你可以根据模式来实现符合自己程序实际所需的解决方案。常常会混淆模式和算法, 因为两者在概念上都是已知特定问题的典型解决方案。但算法总是明确定义达成特定目标所需的一系列步骤, 而模式则是对解决方案的更高层次描述。同一模式在两个不同程序中的实现代码可能会不一样。单例模式。

游戏开发小Y的博客 12万+

C++程序设计(三)——虚基类的多重继承

C++程序设计(三)——虚基类的多重继承

qq_44868018的博客 445

PCL 提取两片点云的非重叠部分【2025最新版】

PCL 提取两片点云的非重叠部分。博客长期更新,本文最近一次更新时间为:2025年9月1日。

点云侠的博客 36万+

虚基类练习:动物(利用虚基类建立一个类的多重继承,包括动物(animal,属性有体长,体重和性别),陆生动物(ter_animal,属性增加了奔跑速度),水生动物(aqu_animal,属性增加了游泳...

Description 长期的物种进化使两栖动物既能活跃在陆地上,又能游动于水中。利用虚基类建立一个类的多重继承,包括动物(animal,属性有体长,体重和性别),陆生动物(ter_animal,属性增加了奔跑速度),水生动物(aqu_animal,属性增加了游泳速度)和两栖动物(amp_animal)。其中两栖动物保留了陆生动物和水生动物的属性。 Input 两栖动物...

weixin_30515513的博客 708

QML 果冻抖动:用 Scale 动画模拟 Q 弹反馈

介绍果冻抖动效果:点击后卡片通过多段 ParallelAnimation 实现 Scale X/Y 反向缩放和逐步衰减,模拟果冻弹性形变;进阶版本加入小幅 Rotation 增加活泼感,适合游戏、儿童应用等趣味反馈场景。

u011186532的专栏 425

MTK_android11_WIFI(内网)和4G(外网)共存

MTK_android11_WIFI(内网)和4G(外网)共存

王涛的博客 2449

虚基类练习:动物

Problem D: 虚基类练习:动物 [Submit][Status][Web Board] Description 长期的物种进化使两栖动物既能活跃在陆地上,又能游动于水中。利用虚基类建立一个类的多重继承,包括动物(animal,属性有体长,体重和性别),陆生动物(ter_animal,属性增加了奔跑速度),水生动物(aqu_animal,属性增加了游泳速度)和两栖动物(

u013629228的专栏 1673

第一章 电力电子仿真软件 PLECS简介

PLECS是瑞士Plexim公司开发的电力电子仿真软件,具有快速仿真、丰富元件库和热分析功能。软件提供单机版和嵌入MATLAB的版本,支持多平台安装且流程简单。首次运行需获取授权文件,提供60分钟演示模式。界面包含模型创建、帮助文档和元件库浏览器等功能区域,操作便捷。该软件是专业高效的电力电子系统仿真工具。

500

YTU-OJ-虚基类练习:动物

Problem M: 虚基类练习:动物 Time Limit: 1 Sec  Memory Limit: 128 MB Submit: 821  Solved: 442 [Submit][Status][Web Board] Description 长期的物种进化使两栖动物既能活跃在陆地上,又能游动于水中。利用虚基类建立一个类的多重继承,包括动物(animal,属性有体长,体

Some. 1187

等保测评-达梦数据库

一般适用于等保测评

m0_54146694的博客 1297

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

OJ 1782 Problem A 让动物们叫起来吧!

Description Tom家里养了很多动物,比如有鸭子、火鸡和公鸡。它们的叫声都不相同。现在,请编写类Animal、Cock、Turkey和Duck,根据给出的main()函数及样例分析每个类的属性、行为及相互关系,以模仿Tom家的情况。 提示:动物们都有自己的名字。 Input 输入有多行。第一行正整数M表示之后有M个测试用例,每个测试用例包括2部分:前一部分是动物的名字,后一部分是动物的类型(用A、B、C分别表示鸭子、火鸡和公鸡)。 Output 输出有M行,每个测试用例对应一样。见样例。

LiuLin_Hao的博客 253

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

YTU-OJ-Problem H: 虚函数练习:动物2

Problem H: 虚函数练习:动物2 Time Limit: 1 Sec  Memory Limit: 128 MB Submit: 425  Solved: 289 [Submit][Status][Web Board] Description 长期的物种进化使自然界出现了生活在陆地上的陆生动物和生活在水中的水生动物。根据已有主函数编写动物类,陆生动物类和水生动物类。

Some. 1309

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

OJ第六批——Problem M: 编程题:多态--动物叫

问题及代码:   Problem M: 编程题:多态--动物叫 Time Limit: 1 Sec  Memory Limit: 128 MB Submit: 164  Solved: 117 [Submit][Status][Web Board] Description /* 利用抽象基类来完成派生类dog和cat的定义,并利用指向基类的指针实现动态多态,输出不同

Timor7hao的专栏 1072

HDU - 2059 龟兔赛跑 (dp)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2059点击打开链接 龟兔赛跑 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 20972    Accepted Submiss

xuejye的博客 342

虚基类练习:动物虚继承

什么叫虚继承? 我的理解就是:

小西 1533

虚函数,虚基类--动物

/* * 程序的版权和版本声明部分 * Copyright (c)2012, 烟台大学计算机学院学生 * All rightsreserved. * 文件名称: object.cpp * 作者:王飞 * 完成日期:2013 年5月 31日 * 版本号: v1.0 * 输入描述:无 * 问题描述:练习虚函数。 * 程序输出:如下 */ #include #incl

fly 1361

虚基类练习 动物1

/*长期的物种进化使两栖动物既能活跃在陆地上,又能游动于水中。 利用虚基类建立一个类的多重继承,包括动物(animal,属性有体长,体重和性别), 陆生动物(ter_animal,属性增加了奔跑速度),水生动物(aqu_animal, 属性增加了游泳速度)和两栖动物(amp_animal)。其中两栖动物保留了陆生动物和水生动物的属性。 Input 两栖动物的体长,体重,性别,游泳速度,奔

u012369106的专栏 1730

虚基类--动物学。。。。

长期的物种进化使两栖动物既能活跃在陆地上,又能游动于水中。利用虚基类建立一个类的多重继承,包括动物(animal,属性有体长,体重和性别),陆生动物(ter_animal,属性增加了奔跑速度),水生动物(aqu_animal,属性增加了游泳速度)和两栖动物(amp_animal)。其中两栖动物保留了陆生动物和水生动物的属性。 这是一个非常经典的虚基类的题。

Masked__Dance的专栏 1211

虚继承_1

描述 长期的物种进化使两栖动物既能活跃在陆地上,又能游动于水中。利用虚基类建立一个类的多重继承,包括动物(animal,属性有体长,体重和性别),陆生动物(ter_animal,属性增加了奔跑速度),水生动物(aqu_animal,属性增加了游泳速度)和两栖动物(amp_animal)。其中两栖动物保留了陆生动物和水生动物的属性。 要求: animal只有带参的构造函数。其他函数根据需要自行设置 输入 两栖动物的体长,体重,性别,游泳速度,奔跑速度(running_speed) 输出 初始.

_C9的博客 391

虚基类练习-动物

/* *程序的版权和版本声明部分: *Copyright(c)2014,烟台大学计算机学院学生 *All rights reserved. *文件名称: *作者:田成琳 *完成日期:2014 年 6 月 10 日 *版本号:v1.0 *对任务及求解方法的描述部分: *输入描述: 两栖动物的体长,体重,性别,游泳速度,奔跑速度 *问题描述:长期的物种进化使两栖动物既能活跃在陆

♛ 走心。的专栏 1166

NOIP2017——真题总结

NOIP来了又去了 于是他留下了四道题……(你以为我要抒情?) 1.成绩(score) 题目描述 牛牛最近学习了C++入门课程,这门课程的总成绩计算方法是: 总成绩 = 作业成绩× 20% + 小测成绩× 30% + 期末考试成绩× 50% 牛牛想知道,这门课程自己最终能得到多少分。 输入 只有1 行,包含三个非负整数A、B、C,分别表示牛牛的作业成绩、小测 成绩和期末考试成绩。

Locke的博客 3098
上一篇: OJ第三批——Problem L: C++继承(改错题)
下一篇: OJ第三批——Problem N: 熟悉题型——填空题(删除线性表节点)
Timor7hao
博客等级 码龄12年 22粉丝 264原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值