类和对象的创建和使用——设计汽车类

任务描述

本关任务:设计一个汽车类,并实现它的基本功能。

相关知识

完成本关需要具备的知识介绍请参见第一、二关卡。

编程要求

在右侧编辑器中的Begin-End之间补充代码,设计汽车类实现汽车的基本功能,根据输入的命令来输出汽车的整体状态。具体要求如下:

  1. 成员变量:车门,车灯,速度(类型以及变量名均自拟)。

  2. 成员函数:打开车门、关闭车门、打开车灯、关闭车灯、加速、减速。(学员可以根据自己情况增加或者减少函数)

其中打开车门、关闭车门、打开车灯、关闭车灯四个函数,用于改变对象内部对应的成员变量的值。加速,减速两个函数,每次调用就将内部的速度变量分别对应增加10或者减少10。车门,车灯两个函数的初始状态都为 OFF,速度的初始值为0。

根据输入的命令(命令由1-6表示,分别对应调用打开车门、关闭车门、打开车灯、关闭车灯、加速、减速函数)输出汽车的最终状态,若输入命令135则输出状态如下:

  1. 车门 ON
  2. 车灯 ON
  3. 速度 10

上述命令为135,则分表调用了打开车门、打开车灯、加速这三个函数,因此最后输出的汽车状态为车门打开,车灯打开和速度为10。

测试说明

平台会对你编写的代码进行测试,比对你输出的数值与实际正确数值,只有所有数据全部计算正确才能通过测试:

注意:命令长度不超过 20,最短长度 1。

测试输入:135
预期输出:

  1. 车门 ON
  2. 车灯 ON
  3. 速度 10

测试输入:135562
预期输出:

  1. 车门 OFF
  2. 车灯 ON
  3. 速度 10

#include <iostream>
using namespace std;

/********* Begin *********/
//在此处实现一个汽车类
class Car
{
    public:
    string door;
    string light;
    int speed;
    Car()
    {
        door="OFF";
        light="OFF";
        speed=0;
    }
    void Ondoor()
    {
        door="ON";
    }
    void Offdoor()
    {
        door="OFF";
    }
    void Onlight()
    {
        light="ON";
    }
    void Offlight()
    {
        light="OFF";
    }
    void Upspeed()
    { 
        speed+=10;
    }
    void Downspeed()
    {
        speed-=10;
    }
    void printfcar()
    {
        cout<<"车门 "<<door<<endl;
        cout<<"车灯 "<<light<<endl;
        cout<<"速度 "<<speed<<endl;
    }
};
/********* End *********/

int main()
{
    /********* Begin *********/
    //在此处解析执行输出汽车的整体状态
	char cmds[25];
    cin>>cmds;
    Car state;
    int i;
    for(i=0;i<25;i++)
    {
        if(cmds[i]=='1')
        state.Ondoor();
        if(cmds[i]=='2')
        state.Offdoor();
        if(cmds[i]=='3')
        state.Onlight();
        if(cmds[i]=='4')
        state.Offlight();
        if(cmds[i]=='5')
        state.Upspeed();
        if(cmds[i]=='6')
        state.Downspeed();
    }
    state.printfcar();
    return 0;
    
    /********* End *********/
}
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值