一:树龄(tree.cpp) 【问题描述】校园里有 n 棵树,每棵树的上都挂着一个牌子,写着
时间: 2024-01-28 14:02:09 浏览: 38
【问题分析】这是一个关于树木信息管理的问题,需要编写一个程序来管理树木的信息。
【问题求解】
```cpp
#include <iostream>
#include <map>
#include <string>
using namespace std;
int main() {
int n;
cin >> n;
map<int, string> treeMap;
for (int i = 0; i < n; i++) {
int age;
string name;
cin >> age >> name;
treeMap[age] = name;
}
for (auto it = treeMap.begin(); it != treeMap.end(); it++) {
cout << "树龄为" << it->first << "的树上挂着牌子,上面写着:" << it->second << endl;
}
return 0;
}
```
以上是一个简单的树木信息管理程序,通过输入每棵树的树龄和名称,存储在map中,并且打印出每棵树的信息。例如,输入样例为:
```
3
10 oak
20 maple
5 pine
```
则输出结果为:
```
树龄为5的树上挂着牌子,上面写着:pine
树龄为10的树上挂着牌子,上面写着:oak
树龄为20的树上挂着牌子,上面写着:maple
```
相关问题
定义一个Tree类,具体要求如下: 1.私有数据成员:树名、树龄。 2.成员函数:无参构造函数,带2个参数的构造函数(树龄的默认值为0)。
好的,根据您的要求,我为您定义了一个Tree类,具体实现如下所示:
```python
class Tree:
def __init__(self):
self.__name = ''
self.__age = 0
def __init__(self, name, age=0):
self.__name = name
self.__age = age
def get_name(self):
return self.__name
def get_age(self):
return self.__age
def set_name(self, name):
self.__name = name
def set_age(self, age):
self.__age = age
```
这里的Tree类有两个构造函数,一个是无参构造函数,另一个是带有两个参数的构造函数。其中,树名和树龄都是私有的数据成员,可以使用get和set方法进行访问。在构造函数中,我们可以给树名和树龄赋初值。
C++语言实现定义一个Tree类,具体要求如下: 1.私有数据成员:树名、树龄。 2.成员函数:无参构造函数,带2个参数的构造函数(树龄的默认值为0)。
好的,以下是使用C++语言实现定义一个Tree类,满足您的要求:
```cpp
#include <iostream>
#include <string>
using namespace std;
class Tree {
private:
string name;
int age;
public:
Tree() {
name = "";
age = 0;
}
Tree(string n, int a = 0) {
name = n;
age = a;
}
string get_name() {
return name;
}
int get_age() {
return age;
}
void set_name(string n) {
name = n;
}
void set_age(int a) {
age = a;
}
};
```
这里的Tree类有两个构造函数,一个是无参构造函数,另一个是带有两个参数的构造函数。其中,树名和树龄都是私有的数据成员,可以使用get和set方法进行访问。在构造函数中,我们可以给树名和树龄赋初值。同时,注意在C++中,私有成员变量需要在类的私有部分声明,get和set方法不需要声明为类的成员函数,但需要在类的公有部分声明。