您的位置:首页 > 编程语言 > C语言/C++

sicily-C++机考模拟考-1000. 购买电脑

2012-06-02 13:59 381 查看
组装一台台式电脑的时候,我们可以根据自己需求,列出一个清档,叫商家帮我们配好清单上的硬件跟软件,简单地模拟这个过程,如同下边的代码,请你根据样例测试数据完成以下三个类的所有方法定义。

PS:请注意输出的一些空格跟符号。
样例测试数据:
Computer c("Shop-Eg");

c.changeHardware("CPU", "AMD");
c.changeHardware("memory", "Samsung DDR3");
c.changeHardware("disk", "Barracuda 500G");

c.changeSoftware("OS", "Windows 7");
c.changeSoftware("browser", "Chrome");

c.print();

对应输出(注意最后一行有一个换行符):
supplier : Shop-Eg
Hardwares :
-CPU:AMD
-memory:Samsung DDR3
-disk:Barracuda 500G
Softwares :
-OS:Windows 7
-browser:Chrome


源代码

#include <iostream>

#include <string>

using namespace std;

//硬件类

class Hardwares{

private:
string CPU;
string memory;
string disk;

public:
void setCPU(string CPU);
void setMemory(string memory);
void setDisk(string disk);
void print();

};

//软件类

class Softwares{

private:
string OS;
string browser;

public:
void setOS(string OS);
void setBrowser(string browser);
void print();

};

//组装电脑

class Computer{

private:
string supplier;//商家
Hardwares hardwares;//硬件
Softwares softwares;//软件

public:
Computer(string supplier);
void changeHardware(string hardwareType, string hardwareName);
void changeSoftware(string softwareType, string softwareName);
void print();

};

void Hardwares::setCPU(string CPU)

{
this->CPU = CPU;

}

void Hardwares::setDisk(string disk)

{
this->disk = disk;

}

void Hardwares::setMemory(string memory)

{
this->memory = memory;

}

void Hardwares::print()

{
cout << "Hardwares : " << endl;
cout << "-CPU:" << CPU << endl;
cout << "-memory:" << memory << endl;
cout << "-disk:" << disk << endl;

}

void Softwares::setOS(string OS)

{
this->OS = OS;

}

void Softwares::setBrowser(string browser)

{
this->browser = browser;

}

void Softwares::print()

{
cout << "Softwares : " << endl;
cout << "-OS:" << OS << endl;
cout << "-browser:" << browser << endl;

}

Computer::Computer(string supplier)

{
this->supplier = supplier;

}

void Computer::changeHardware(string hardwareType, string hardwareName)

{
if (hardwareType == "CPU")
{
this->hardwares.setCPU(hardwareName);
}
else if (hardwareType == "memory")
{
this->hardwares.setMemory(hardwareName);
}
else if (hardwareType == "disk")
{
this->hardwares.setDisk(hardwareName);
}

}

void Computer::changeSoftware(string softwareType, string softwareName)

{
if (softwareType == "OS")
{
this->softwares.setOS(softwareName);
}
else if (softwareType == "browser")
{
this->softwares.setBrowser(softwareName);
}

}

void Computer::print()

{
cout << "supplier : " << supplier << endl;
hardwares.print();
softwares.print();

}

注意:hardware : 和software: 后面都有空格
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息