c++上机试题及答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
A.类的定义
Time Limit: 1000 MS Memory Limit: 32768 K
Total Submit: 659 (260 users) Total Accepted: 116 (114 users) Special Judge: No
Description
定义一个Circle类,有私有数据成员radius(半径);公有成员函数getArea(),用来计算圆的面积;实现能初始化半径的构造函数,以及拷贝构造函数。要在主函数中定义两个对象,并且输出两个对象的面积。其中第二个由第一个对象初始化,圆周率取为3.14。(15分)
Input
包含一个整数。
Output
输出一行,是两个对象的面积值。具体参照样例。
Sample Input
2
Sample Output
12.56 12.56
A题
#include
using namespace std;
class Circle
{
public:
Circle(int r):radius(r) {}
Circle(Circle &p);
double getArea(int radius);
private:
int radius;
};
Circle::Circle(Circle &p)
{
radius = p.radius;
}
double Circle::getArea(int radius)
{
float area;
area = 3.14*radius*radius;
return area;
}
int main()
{
int r;
double area1,area2;
Circle A(r);
Circle B(A);
cin>>r;
area1 = A.getArea(r);
area2 = B.getArea(r);
cout< return 0; } B.静态数据成员 Time Limit: 1000 MS Memory Limit: 32768 K Total Submit: 270 (173 users) Total Accepted: 60 (57 users) Special Judge: No Description 定义一个Lingjian类,拥有整型的数据成员Weight和静态数据成员AllWeights (初始化为0),每定义一个对象,AllWeights增加该零件的重量Weight;析构函数中删除Weight;静态成员函数GetWeights()获取Weights。设计程序,定义两个对象之后,输出类的AllWeights。其中Weight是在main()函数中从文件读数对单个零件重量赋值。(15分) 注意:必须按照描述要求书写代码,否则不给分。 Input 包含一个整数。 Output 输出一行,是Lengths的值。具体参照样例。 Sample Input 12 24 Sample Output 36 B题 #include using namespace std; class Lingjian { public: Lingjian(int Weights) { AllWeights = AllWeights + Weights; } ~Lingjian(){ Weights = 0;} static int GetWeights() { return Weights; } static int AllWeights; static int Weights; }; int Lingjian::AllWeights=0; int Lingjian::Weights=0; int main() { int a,b; cin>>a>>b; Lingjian A(a); Lingjian B(b); cout< return 0; } C.友元函数 Time Limit: 1000 MS Memory Limit: 32768 K Total Submit: 400 (230 users) Total Accepted: 98 (97 users) Special Judge: No Description 定义狮子Lion与老虎Tiger两个类,二者都有weight私有整型属性,定义二者的一个友元函数totalWeight(),计算二者的重量和。设计程序,定义狮子与老虎两个对象之后,调用totalWeight(),计算二者的重量和,然后输出。其中狮子与老虎的Weight是在main()函数中从文件读数赋值。(15分) 注意:必须按照描述要求书写代码,否则不给分。 Input 包含一个整数。 Output 重量和输出一行,是重量和的值。具体参照样例。Sample Input 240 280 Sample Output 520 C题 #include using namespace std; class Tiger; class Lion { public: Lion(int L):weight(L) {} friend int totalWeight(Lion &aLion, Tiger &aTiger); private: int weight; }; class Tiger { public: Tiger(int T):weight(T) {} friend int totalWeight(Lion &aLion, Tiger &aTiger); private: int weight; }; int totalWeight(Lion &aLion, Tiger &aTiger) { return aLion.weight+aTiger.weight; } int main() { int w1, w2; cin>>w1>>w2; Lion L(w1); Tiger T(w2); cout<