c++上机试题及答案

更新时间:2023-06-29 20:15:52 阅读: 评论:0

A.类的定义
Time Limit: 1000 MS Memory Limit: 32768 K
Total Submit: 659 <260 urs>    Total Accepted: 116 <114 urs>    Special Judge: No 
Description
定义一个Circle类,有私有数据成员radius〔半径;公有成员函数getArea〔,用来计算圆的面积;实现能初始化半径的构造函数,以及拷贝构造函数。要在主函数中定义两个对象,并且输出两个对象的面积。其中第二个由第一个对象初始化,圆周率取为3.14。<15分>
Input
包含一个整数。
Output
输出一行,是两个对象的面积值。具体参照样例。
Sample Input
2
Sample Output
12.56 12.56
A题
#include<iostream>
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<<area1<<" "<<area2<<endl;
    return 0;
}
B.静态数据成员
Time Limit: 1000 MS Memory Limit: 32768 K
Total Submit: 270 <173 urs>    Total Accepted: 60 <57 urs>    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<iostream>
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<<B.AllWeights<<endl;
    return 0;
}
C.友元函数
Time Limit: 1000 MS Memory Limit: 32768 K
Total Submit: 400 <230 urs>    Total Accepted: 98 <97 urs>    Special Judge: No 
Description
定义狮子Lion与老虎Tiger两个类,二者都有weight私有整型属性,定义二者的一个友元函数totalWeight<>,计算二者的重量和。设计程序,定义狮子与老虎两个对象之后,调用totalWeight<>,计算二者的重量和,然后输出。其中狮子与老虎的Weight是在main<>函数中从文件读数赋值。〔15分
注意:必须按照描述要求书写代码,否则不给分。
Input
《老人与海》读书笔记包含一个整数。
Output
重量和输出一行,是重量和的值。具体参照样例。
Sample Input
240 280
Sample Output
520
C题
#include<iostream>
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<<totalWeight<L,T><<endl;
}
北京取暖费标准D.用指针访问二维数组
Time Limit: 1000 MS Memory Limit: 32768 K
Total Submit: 161 <115 urs>    Total Accepted: 39 <38 urs>    Special Judge: No 
Description
定义一个3x3的二维数组,从文件中读入数据。设计一个函数名为average,该函数的第一个参数是二维数组,第二个参数是行数,功能为对整个二维数组求平均值,返回值为最后的平均
值,要求用以指针形式访问数组,不能使用下标形式〔如a[1][2]。在主函数main中调用average求平均值,输出数组的平均值。〔15分
注意:必须按照描述要求书写代码,否则扣分或者不给分。
Input
输入有三行,每行有3个浮点数,浮点数围[-200,200]
Output
输出数组的平均值。具体参照样例。
输出不要求精度控制,使用C++默认的输出即可。如将浮点数f输出到一行,使用cout << f <<endl;输出即可。
Sample Input
123.1 123.3 124.5 124 135 145 122 133 213
Sample Output
138.1
D题
#include<iostream>
using namespace std;
float average<float a[3][3] , int i>
{
    float sum = 0;
    for<int i = 0; i < 3; i++>
        for<int j = 0 ; j < 3; j++>
        {
            sum += *<*<a+i>+j>;
        }
    return sum/9;
}
int main<>
{
    float average<float a[3][3], int i>;
    float a[3][3];
    float aver;
    for<int i = 0; i < 3; i++>
        for<int j = 0 ; j < 3; j++>
            cin>>*<*<a+i>+j>;;
    aver = average<a,3>;
    cout<<aver<<endl;
}
E.派生类
统计局实习报告
Time Limit: 1000 MS Memory Limit: 32768 K
Total Submit: 164 <119 urs>    Total Accepted: 27 <25 urs>    Special Judge: No 
Description
设计一个名为Point的点类和一个名为Rectangle的矩形类。点类的属性是整型的x和y坐标。矩形类是从点类派生的,点坐标为矩形的左下角的点坐标,并增加两个整型属性,分别是长〔X方向和高〔Y方向。同时还有获取<并计算>右上角点的成员函数getRightUpPoint<>。
要求设计实现这两个类,并且矩形类还要实现带参数的构造函数,以及拷贝构造函数。从文件读取数据构造一个矩形对象R1,使用拷贝构造函数构造矩形对象变量名为R2,进而调用R2的getRightUpPoint<>得到右上角坐标,然后输出该坐标值。写出完整的C++测试派生类构造函数、拷贝构造函数的程序代码。<20分>
注意:必须按照描述要求书写代码,否则不给分。

本文发布于:2023-06-29 20:15:52,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/1068831.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:对象   输出   数组   函数
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图