31. 声明一个类 String,其数据成员为 char head[100],构造函数 String(char *Head)实现 head 的初始化,成员函数 void reverse()实现 head 内字符串的 逆序存放,成员函数 void print()实现 head 内字符串的输出。
#include<iostream>
#include<string.h>
using namespace std;
class String;
class String
{
public:
String(char* Head)
{
strcpy(head,Head);
}
void reverse()
{
int len = strlen(head);
for (int i = 0; i < len / 2; i++)
{
swap(head[i], head[len - 1 - i]);
}
}
void print()
{
int len = strlen(head);
for (int i = 0; i < len ; i++)
{
cout << head[i];
}
cout << endl;
}
char head[100];
};
int main()
{
char n[100] = "abcdefg";
char* m = n;
String s(m);
s.print();
s.reverse();
s.print();
return 0;
}
32. 定义盒子 Box 类,要求具有以下成员:可设置盒子形状;可计算盒子体积; 可计算盒子的表面积。
#include<iostream>
using namespace std;
class Box
{
public:
Box()
{
H = W = L = 0;
}
void setShape(int h, int w, int j)
{
H = h;
W = w;
L = j;
}
int square()
{
int s = H * W * 2 + H * L * 2 + W * L * 2;
return s;
}
int volume()
{
int v = H * W * L;
return v;
}
int H;
int W;
int L;
};
int main()
{
Box b;
b.setShape(10, 20, 30);
cout << "s=" << b.square() << ", v= " << b.volume() << endl;
return 0;
}
33. 声明一个 Tree(树)类,有成员 ages(树龄),成员函数 grow(int years)用 以对 ages 加上 years,showAge()用以显示 tree 对象的 ages 值。在主函数中定 义 Tree 类对象&