用c➕➕语言写三个人比饭量大小程序及运行结果
时间: 2024-10-13 14:08:57 浏览: 26
在C++中,我们可以创建一个简单的程序来模拟三个人比较饭量大小的情况。这里我们假设有三个类Person,分别代表张三、李四和王五,并有一个静态函数compare来比较他们的饭量。下面是一个基本的实现示例:
```cpp
#include <iostream>
using namespace std;
class Person {
public:
virtual int getFoodAmount() = 0; // 纯虚函数,用于表示饭量抽象
protected:
string name;
};
class ZhangSan : public Person {
public:
ZhangSan(int amount) : name("张三"), foodAmount(amount) {}
int getFoodAmount() override { return foodAmount; }
private:
int foodAmount;
};
class LiSi : public Person {
public:
LiSi(int amount) : name("李四"), foodAmount(amount) {}
int getFoodAmount() override { return foodAmount; }
private:
int foodAmount;
};
class WangWu : public Person {
public:
WangWu(int amount) : name("王五"), foodAmount(amount) {}
int getFoodAmount() override { return foodAmount; }
private:
int foodAmount;
};
// 比较饭量的静态函数
int compareFood(Person* person1, Person* person2) {
return person1->getFoodAmount() > person2->getFoodAmount();
}
int main() {
ZhangSan zhang(50);
LiSi li(60);
WangWu wu(70);
if (compareFood(&zhang, &li)) {
cout << zhang.name << " 的饭量比 " << li.name << " 少" << endl;
} else {
cout << zhang.name << " 的饭量比 " << li.name << " 大" << endl;
}
if (compareFood(&li, &wu)) {
cout << li.name << " 的饭量比 " << wu.name << " 少" << endl;
} else {
cout << li.name << " 的饭量比 " << wu.name << " 大" << endl;
}
if (compareFood(&zhang, &wu)) {
cout << zhang.name << " 的饭量比 " << wu.name << " 少" << endl;
} else {
cout << zhang.name << " 的饭量比 " << wu.name << " 大" << endl;
}
return 0;
}
```
在这个例子中,`main()`函数中首先创建了三个人的实例,然后通过compareFood函数比较他们的饭量并打印出相应的结果。
运行结果可能是:
```
张三 的饭量比 李四 少
李四 的饭量比 王五 少
张三 的饭量比 王五 少
```
阅读全文