C++程序设计题求解答

如题所述

C++实现以上UML图,你们这大题挺有分量,参考代码如下:

#include<iostream>
using namespace std;
const float PI=3.14159;
class Shape {
public :
    virtual float area()=0;
    virtual float display()=0;
};
class Point: public Shape {
protected :
    float x,y;
public :
    Point(float x, float y):
        x(x),y(y) {}
    virtual float area() {
        return 0;
    }
    virtual float display() {
        cout<<"Point("<<x<<","<<y<<")"<<endl;
    }
};
class Circle: public Point {
protected :
    float radius;
public :
    Circle(float x, float y, float r):
        Point(x,y),radius(r) {}
    virtual float area() {
        return PI*radius*radius;
    }
    virtual float display() {
        cout<<"Radius of Circle("<<x<<","<<y<<")=";
        cout<<radius<<endl;
        cout<<"Area of Circle("<<x<<","<<y<<")=";
        cout<<area()<<endl;
    }
};
int main()
{
    Circle c(1,2,2);
    Point p(1,2);
    p.display();
    c.display();
    return 0;
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-03-08
第1章基本数据与表达式
1.1选择题
1.一个最简单的C++程序,可以只有一个(C)。
(A)库函数(B)自定义函数(C)main函数(D)空函数
2.用C++语言编写的源程序要成为目标程序必须要经过(D)。
(A)解释(B)汇编(C)编辑(D)编译
3.C++程序中的简单语句必须以(B)结束。
(A)冒号(B)分号(C)空格(D)花括号
4.假设有说明int a=0;double x=
5.16;,则在以下语句中,(C)属于编译错误。
(A)x=a/x;(B)x=x/a;(C)a=a%x;(D)x=x*a;
小熊解答:%要求两边都是整数
那个x是小数要先强转成int才可以运算
5.执行C++程序时出现的“溢出”错误属于(C)错误。
(A)编译(B)连接(C)运行(D)逻辑
6.在下列选项中,全部都是C++关键字的选项为(C)。
(A)while IF Static(B)break char go
(C)sizeof case extern(D)switch float integer
7.按C++标识符的语法规定,合法的标识符是(A)。
(A)_abc(B)new(C)π(D)"age"
标识符以字母或下划线开始,由字母、数字或者下划线组成的字符串。
8.在C++语句中,两个标识符之间(A)不能
..作为C++的分隔符。
(A)数字(B);(C):(D)+
分隔符用于在程序中分隔不同的语法单位,便于编译系统识别。其中的空格、逗号、分号都是分隔符。
9.下列正确的八进制整型常量表示是(B)。
(A)0a0(B)015(C)080(D)0x10
10.下列错误的十六进制整型常量表示是(C)。
(A)0x11(B)0xaf(C)0xg(D)0x1f
相似回答