欢迎光临
我们一直在努力

地大《面向对象程序设计》考试模拟题【标准答案】

可做奥鹏国开全部院校作业论文!答案请添加qq:599792888 或 微信:1095258436

《面向对象程序设计》考前练兵

1.[单选题] 如果一个类中包含纯虚函数,则该类称为().

答案资料下载请参考帮助中心说明

A.抽象类

B.虚基类

C.派生类

D.子类

答:——A——

2.[单选题] 在类中将show声明为不带返回值的纯虚函数,则正确的写法是().

A.virtual void show()=0;

B.virtual show()=0;

C.virtual void show();

D.void show()=0 virtual;

答:——A——

3.[单选题] 虚函数必须是类的().

A.构造函数

B.友元函数

C.成员函数

D.私有成员函数

答:——C——

4.[单选题] 下列关于虚函数的描述中,()是正确的.

A.虚函数一定不能有函数体

B.含有虚函数的类,不能定义该类对象

C.虚函数只能被重载,不能被继承

D.基类中声明虚函数后,派生类中可以不重载该虚函数

答:————

5.[单选题] 在C++中要实现动态联编,可以使用()调用虚函数.

A.类名

B.派生类指针

C.对象名

D.基类指针

答:————

6.[单选题] 下列函数中,不能说明为虚函数的是().

A.私有成员函数

B.公有成员函数

C.构造函数

D.析构函数

答:————

7.[单选题] 一个类中的某个函数被声明为virtual,则该函数在该类的所有派生类中().

A.都是虚函数

B.重载后才是虚函数

C.被重新说明为virtual时才是虚函数

D.不是虚函数

答:————

8.[单选题] 类B是类A的公有派生类,类A和类B中都定义了虚函数func(),p是一个指向类A的指针,则p->func()将().

A.调用类A中的函数func()

B.调用类B中的函数func()

C.根据p实际所指对象类型确定调用A或B类中的函数func()

D.同时调用A类和B类中的函数func()

答:————

9.[单选题] 下列关于虚函数的说明中,正确的是().

A.从虚基类继承的函数都是虚函数

B.虚函数不能是静态成员函数

C.通过对象不能调用虚函数

D.抽象类中的函数都是虚函数

答:————

10.[单选题] 有一个重载运算符的函数参数表中,没有任何参数,则可以断定被重载的运算符函数是().

A.单目友元函数

B.单目成员函数

C.双目友元函数

D.双目成员函数

答:————

11.[单选题] 下列关于运算符函数返回值类型的描述中,错误的是().

A.可以是类类型

B.可以是int类型

C.可以是void类型

D.可以是float类型

答:————

12.[单选题] 友元运算符obj1>obj2被C++编译器解释为().

A.operator>(obj1,obj2)

B.>(obj1,obj2)

C.obj1.operator>(obj2)

D.obj2.operator>(obj1)

答:————

13.[单选题] 在表达式x+y*z中,+作为成员函数重载的运算符,*作为友元函数重载的运算符,以下叙述中正确的是().

A.operator+有2个参数,operator*有2个参数

B.operator+有2个参数,operator*有1个参数

C.operator+有1个参数,operator*有2个参数

D.operator+有1个参数,operator*有1个参数

答:————

14.[单选题] 重载赋值运算符时,应声明为()函数.

A.友元

B.虚

C.成员

D.多态 奥鹏东财答案点击 ap5u.com 或 q1647861640

答:————

15.[单选题] 在成员函数中进行双目运算符重载时,参数表中应有()个参数.

A.0

B.1

C.2

D.3

答:————

16.[单选题] 双目运算符重载为友元函数时,参数表中应有()个参数.

A.0

B.1

C.2

D.抽象类中的函数都是虚函数

答:————

17.[单选题] 若表达式a+b中的”+”是作为成员函数重载的运算符,若采用运算符函数调用格式,则可表示为().

A.a.operator+(b)

B.b.operator+(a)

C.operator+(a,b)

D.双目成员函数

答:————

18.[单选题] 假定M是一个类名,且M中重载了操作符=,可以实现M对象间的连续赋值,如”m1=m2=m3;”.重载操作符=的函数原型最好是().

A.int operaotor=(constM);

B.int operator=(constM&);

C.Moperator=(constM&);

D.可以是float类型

答:————

19.[单选题] 下面是重载双目运算符+的普通函数原形,其中最符合+原来含义的是().

A.Value operator+(Value,Value);

B.Value operator+(Value,int);

C.Value &operator+(Value,Value);

D.obj2.operator>(obj1)

答:————

20.[单选题] 类模板允许我们创建一系列相关的().

A.类

B.变量

C.数组

D.operator+有1个参数,operator*有1个参数

答:————

21.[单选题] 关于异常,以下叙述中正确的是().

A.友元

B.当异常被一个catch块处理后,执行流程进入下一个catch块

C.当一个异常被抛出后,其后的第一个catch块执行

D.多态

答:————

22.[单选题] 以下关于函数模板叙述正确的是().

A.函数模板也是一个具体类型的函数

B.函数模板的类型参数与函数的参数是同一个概念

C.通过使用不同的类型参数,函数模板可以生成不同类型的函数

D.用函数模板定义的函数没有类型

答:————

23.[单选题] 有如下函数模板定义,则下列函数调用中错误的是().templateTfunc(T x,T y){returnx*x+y*y;}

A.func(3,5);

B.func(3,3.5)

C.func(3,5.5);

D.func(3,3.5);

答:————

24.[单选题] 下列关于函数模板的描述中,错误的是().

A.函数模板必须由程序员实例化为可执行的模板函数

B.函数模板的实例化由编译器完成

C.一个类定义中,只要有一个函数模板,则这个类是类模板

D.类模板的成员函数都是函数模板

答:————

25.[单选题] 下列模板声明中,正确的是().

A.template

B.template

C.template

D.template

答:————

26.[单选题] 类模板的使用实际上是将类模板实例化为一个().

A.函数

B.对象

C.类

D.抽象类

答:————

27.[单选题] 下列关于异常的叙述中,错误的是().

A.编译错属于异常,可以抛出

B.运行错属于异常

C.抛出异常后,将跳过函数中的其它代码

D.抛出的异常可以不被捕获

答:————

28.[单选题] 在C++程序中使用的cin标识符是系统类库中定义的()类中的一个对象.

A.istream

B.ostream

C.iostream

D.fstream

答:————

29.[单选题] 要进行文件的输入输出,除了包含头文件iostream外,还需要包含头文件().

A.ifstream

B.fstream

C.ostream

D.cstdio

答:————

30.[单选题] 定义char*p=“abcd”,能输出p的值(字符串地址)的语句为().

A.cout<<&p;

B.cout< C.cout<<(char*)p;

D.cout(p);

答:————

31.[单选题] 用于打开二进制文件的标志是().

A.ios::binary

B.ios::in

C.ios::out

D.ios::trunc

答:————

32.[单选题] 下列输出字符’B’的方法中,错误的是().

A.cout.put(‘B’);

B.chara=’B’;cout< C.cout< D.cout<<’B’;

答:————

33.[单选题] 使用setw()等操作函数设置数据输出格式时,应包含头文件().

答:————

34.[单选题] 可设置输出宽度的方法是().

A.setfill()

B.setw()

C.setprecision()

D.oct

答:————

35.[单选题] 面向对象程序设计思想的主要特征不包括().

A.继承性

B.功能分解,逐步求精

C.封装性和信息隐藏

D.多态性

答:————

36.[单选题] 下列能用作C++标识符的是().

A._123

B.for

C.case

D.virtual

答:————

37.[单选题] 以下工具中,()将C++源代码转换为目标文件.

A.编译器

B.链接器

C.编辑器

D.集成开发环境

答:————

38.[单选题] C++程序主函数名称是().

A.Main

B.main

C.MAIN

D.用户自定义函数

答:————

39.[单选题] main函数的返回值类型是().

A.char

B.double

C.int

D.无返回类型

答:————

40.[单选题] 下列关于相同类型指针的运算中,()是非法的.

A.两个指针进行相等或不等的运算

B.将NULL赋值给某个指针变量

C.一个指针加上一个整数

D.两个指针相加

答:————

41.[单选题] 下列关于动态联编的叙述中,()是错误的.

A.动态联编是以虚函数为基础的

B.动态联编在程序运行时确定所调用的函数代码块

C.动态联编调用多态函数时,传递的是基类对象的指针或基类对象引用

D.动态联编是在编译时确定调用某个函数的

答:————

42.[单选题] 下列描述中,()是抽象类的特征.

A.可以声明虚函数

B.不能说明其对象

C.可以定义友元函数

D.可以进行构造函数重载

答:————

43.[单选题] 在派生类中重载一个虚函数时,要求函数名.参数个数.参数类型和函数返回值().

A.相同

B.不同

C.相容

D.部分相同

答:————

44.[单选题] 下列关于抽象类的说明中,不正确的是().

A.含有纯虚函数的类称为抽象类

B.抽象类不能被实例化

C.抽象类的派生类一定可以实例化

D.可以声明抽象类的指针

答:————

45.[单选题] 下列运算符中,不能使用友元函数实现的是().

A.+

B.=

C.*

D.<<

答:————

46.[单选题] 若表达式a==b中的”==”是作为普通函数重载的运算符,若采用运算符函数调用格式,则可表示为().

A.a.operator==(b)

B.b.operator==(a)

C.operator==(a,b)

D.operator==(b,a)

答:————

47.[单选题] 对于int *p[5],以下叙述正确的是().

A.p是一个指向数组的指针,所指向的数组是5个int型元素

B.p是一个指向某数组中下标为5的元素的指针,该元素为int型

C.p[5]表示某个数组的第5个元素的值

D.p是一个具有5个元素的指针数组,每个元素是一个int型指针

答:————

48.[单选题] 若一个函数无返回值,则定义它时函数的类型应该为().

A.void

B.任意

C.int

D.无

答:————

49.[单选题] 在VC环境下,int型占用的字节数为().

A.1

B.2

C.4

D.8

答:————

50.[单选题] 类型修饰符unsigned修饰()类型是错误的.

A.char

B.int

C.longint

D.float

答:————

51.[单选题] 已有int m=10;则属于合法引用定义的是().

A.int &rm=m;

B.int &rm=10;

C.int &rm;rm=m;

D.int &rm=&m;

答:————

52.[单选题] 在C++中,下列关于设置参数默认值的叙述中,正确的是().

A.不允许设置参数的默认值

B.设置参数默认值时,应先设置右边的再设置左边的

C.设置参数默认值时,要么全部设置,要么一个也不设置

D.设置参数默认值时,应先设置左边的再设置右边的

答:————

53.[单选题] 下列对重载函数的描述中,()是错误的.

A.重载函数中不允许使用缺省参数

B.重载函数不能通过返回值类型区分不同的版本

C.编译系统根据参数表确定函数版本

D.类的析构函数不能重载

答:————

54.[单选题] 下面动态分配内存的代码执行后,正确的描述是().Int *p;p=new int[5];

A.动态开辟5个int元素,初值不确定

B.动态开辟初值为5的一个int元素

C.动态开辟5个int元素,初值为0

D.释放p所指向内存的代码为:delete p;

答:————

55.[单选题] 重载函数在调用时选择的依据中,()是错误的.

A.参数个数

B.参数类型

C.函数名字

D.函数的类型

答:————

56.[单选题] 已知数组定义,int array[10];则最小数组下标为().

A.0

B.1

C.9

D.10

答:————

57.[单选题] 字符串”ab”在内存中占用的字节数为().

A.1

B.2

C.3

D.4

答:————

58.[单选题] 1条return语句,可以返回()值.

A.1个

B.多个

C.1个或多个

D.任意

答:————

59.[单选题] 以下表达式中,结果为false的是().

A.3.15

B.-0.5

C.0

D.‘0’

答:————

60.[单选题] 已知数组定义,int array[10];()是非法的数组元素访问.

A.array[10]

B.array[1]

C.array[0]

D.array[9]

答:————

61.[单选题] 下列的符号常量定义中,错误的定义是().

A.int constM=10;

B.const intM=20;

C.const char ch;

D.const bool mark=true;

答:————

62.[单选题] 设array为一个数组,则表达式sizeof(array)/sizeof(array[0])的结果为().

A.array数组首地址

B.array数组中元素个数

C.array数组中每个元素所占的字节数

D.array数组占的总字节数

答:————

63.[单选题] 用new运算符创建一个含10个元素的一维整型数组的正确语句是().

A.int *p=new a[10];

B.int *p=new float[10];

C.int *p=new int[10];

D.int *p=new int[10]={1,2,3,4,5}

答:————

64.[单选题] 假定指针变量p定义为”int *p=new int[30];”,要释放p所指向的动态内存,应使用语句().

A.delete p;

B.delete *p;

C.delete &p;

D.delete[]p;

答:————

65.[单选题] 采用重载函数的目的是().

A.实现共享

B.减少空间

C.提高速度

D.使用方便,提高可读性

答:————

66.[单选题] 关于封装,下列说法中不正确的是().

A.通过封装,对象的全部属性和操作结合在一起,形成一个整体

B.通过封装,一个对象的实现细节被尽可能地隐藏起来(不可见)

C.通过封装,每个对象都成为相对独立的实体

D.通过封装,对象的属性都是不可见的

答:————

67.[单选题] 面向对象方法的多态性是指().

A.一个类可以派生出多个特殊类

B.一个对象在不同的运行环境中可以有不同的变体

C.针对一消息,不同的对象可以以适合自身的方式加以响应

D.一个对象可以是由多个其他对象组合而成的

答:————

68.[单选题] 在类作用域中能够通过直接使用该类的()成员名进行访问.

A.私有

B.公有

C.保护

D.任何

答:————

69.[单选题] 假定AA为一个类,a为该类公有的数据成员,px为指向该类对象的一个指针,则访问px所指对象中数据成员a的格式为().

A.px(a)

B.px[a]

C.px->a

D.px.a

答:————

70.[单选题] 类的析构函数是一个对象被()时自动调用的.

A.建立

B.销毁

C.赋值

D.引用

答:————

71.[单选题] 设px是指向一个类对象的指针变量,则执行”delete px;”语句时,将自动调用该类的().

A.无参构造函数

B.带参构造函数

C.析构函数

D.拷贝构造函数

答:————

72.[单选题] 类的析构函数可以带有()个参数.

A.0

B.1

C.2

D.任意

答:————

73.[单选题] 静态成员函数对类的数据成员访问().

A.是不允许的

B.只允许是静态数据成员

C.只允许是非静态数据成员

D.可允许是静态数据成员或非静态数据成员

答:————

74.[单选题] 假定AB为一个类,则执行”AB a(2),b[3],*p[4];”语句时共调用该类构造函数的次数为().

A.3

B.4

C.5

D.9

答:————

75.[单选题] 假定AA为一个类,int a()为该类的一个成员函数,若该成员函数在类定义体外定义,则函数头为().

A.int AA::a()

B.int AA:a()

C.AA::a()

D.AA::inta()

答:————

76.[单选题] 类中具有数据操作功能的是().

A.常数据成员

B.函数成员

C.数据成员

D.静态成员

答:————

77.[单选题] 关键字()定义允许在类外部使用的成员数据和成员函数.

A.virtual

B.class

C.public

D.private

答:————

78.[单选题] 下列对构造函数的描述中,()是错误的.

A.函数名与类名完全相同

B.构造函数允许重载

C.返回类型应该为void

D.构造函数允许使用缺省参数

答:————

79.[单选题] 已知print是某个类的常成员函数,返回值类型为void,正确的定义形式是().

A.void const print();

B.const void print();

C.void print() const;

D.void print(const);

答:————

80.[单选题] 假定MyClass为一个类,执行”MyClassa[3],*p;”语句时会自动调用该类型构造函数()次.

A.2

B.3

C.4

D.5

答:————

81.[单选题] 下列运算符中,必须使用友元函数实现的是().

A.+

B.++

C.*

D.<<

答:————

82.[单选题] 如果表达式a++中的”++”是作为普通函数重载的运算符,若采用运算符函数调用格式,则可表示为().

A.a.operator++()

B.operator++(a)

C.operator++(a,1)

D.operator++(1,a)

答:————

83.[单选题] 在C++程序中使用的cout标识符是系统类库中定义的()类中的一个对象.

A.istream

B.ostream

C.iostream

D.fstream

答:————

84.[单选题] 假定AB为一个类,则执行”AB x;”语句时将自动调用该类的().

A.带参构造函数

B.无参构造函数

C.拷贝构造函数

D.赋值重载运算符

答:————

85.[单选题] 类的构造函数可以带有()个参数.

A.0

B.1

C.2

D.任意

答:————

86.[单选题] 对类对象成员的初始化是通过构造函数中给出的()实现的.

A.函数体

B.初始化列表

C.参数表

D.初始化列表或函数体

答:————

87.[单选题] 假定一个类AB只含有一个整型数据成员a,当用户不定义任何构造函数时,系统为该类定义的无参构造函数为().

A.AB(){a=0;}

B.AB(int aa=0):a(aa){}

C.AB(int aa):a(aa){}

D.AB(){}

答:————

88.[单选题] 假定AA是一个类,abc是该类的一个成员函数,则参数表中隐含的第一个参数为().

A.abc

B.*this

C.this

D.this&

答:————

89.[单选题] 下列关于析构函数的描述中,()是正确的.

A.一个类中可以重载多个版本析构函数

B.析构函数名与类名完全相同

C.析构函数可以有1个或多个参数

D.析构函数不能指定返回值类型

答:————

90.[单选题] 假定AB为一个类,x是AB类的一个对象,则执行”AB y=x;”语句时将自动调用该类的().

A.复制构造函数

B.析构函数

C.缺省构造函数

D.赋值运算符函数

答:————

91.[单选题] 若有类Test,该类的复制构造函数声明为().

A.Test();

B.Test (constCTest&);

C.void Test(constCTest&t);

D.Test(constCTest*t);

答:————

92.[单选题] 以下选项中,()不是类的成员函数.

A.构造函数

B.析构函数

C.友元函数

D.复制构造函数

答:————

93.[单选题] 构造函数在()时被调用.

A.程序编译

B.程序装入内存

C.创建类

D.创建对象

答:————

94.[单选题] 用户能够为类定义()个析构函数.

A.1

B.0

C.2

D.多个

答:————

95.[单选题] 下列函数原型中,可以作为类AA构造函数的是().

A.void AA(int);

B.int AA();

C.AA(int)const;

D.AA(int);

答:————

96.[单选题] 友元的作用是().

A.提高程序的运行效率

B.加强类的封装性

C.实现数据的隐藏

D.增加成员函数的种类

答:————

97.[单选题] 被非静态成员函数访问的类的数据成员().

A.可以是非静态数据成员或静态数据成员

B.不可能是类的静态数据成员

C.只能是类的非静态数据成员

D.只能是类的静态数据成员

答:————

98.[单选题] 使用关键字()修饰的数据成员,允许当前类及其派生类访问,而不允许在类的外部访问.

A.public

B.protected

C.private

D.不指定

答:————

99.[单选题] 派生类的成员函数可以直接访问基类的()成员.

A.公有

B.保护

C.公有和保护

D.私有

答:————

100.[单选题] 下列叙述中,()不符合赋值兼容性规则.

A.基类的对象可以赋值给派生类对象

B.派生类对象可以赋值给基类的对象

C.派生类对象可以初始化基类对象的引用

D.派生类对象的地址可以赋值给基类的对象指针

答:————

101.[单选题] 如果采用公有继承,通过派生类对象,可以访问基类的().

A.私有成员

B.所有成员

C.保护成员

D.公有成员

答:————

102.[单选题] 派生类构造函数的成员初始化列表中不能包含().

A.基类的构造函数

B.派生类中成员对象的初始化

C.基类成员对象的初始化

D.派生类中一般数据成员的初始化

答:————

103.[单选题] 当保护继承时,基类的()在派生类中成为保护成员,不能通过派生类对象来直接访问.

A.任何成员

B.公有成员和保护成员

C.公有成员和私有成员

D.私有成员

答:————

104.[单选题] 设置虚基类的目的是().

A.简化程序

B.消除二义性

C.提高运行效率

D.减少目标代码

答:————

105.[单选题] 下列虚基类的声明中,()是正确的.

A.class virtualB:publicA

B.classB:virtual publicA

C.virtual classB:publicA

D.classB:publicA virtual

答:————

106.[单选题] 类O定义了私有函数F1.P和Q为O类的派生类,定义为classP:public){…};classQ:protectedO{…}.则()可以访问F1.

A.O的对象

B.P类内

C.O类内

D.Q类内

答:————

107.[单选题] 派生类采用()继承方式可以使基类保护成员成为自己的私有成员.

A.私有继承

B.保护继承

C.公有继承

D.私有.保护.公有均可

答:————

108.[单选题] 从一个基类派生出的各个类的对象之间().

A.共享所有数据成员,每个对象还包含基类的所有属性

B.共享部分数据成员,每个对象还包含基类的所有属性

C.不共享任何数据成员,但每个对象还包含基类的所有属性

D.共享部分数据成员和函数成员

答:————

109.[单选题] 建立包含有类对象成员的派生类对象时,自动调用构造函数的执行顺序依次为()的构造函数.

A.自己所属类.对象成员所属类.基类

B.对象成员所属类.基类.自己所属类

C.基类.对象成员所属类.自己所属类

D.基类.自己所属类.对象成员所属类

答:————

110.[单选题] 当派生类中有和基类一样名字的成员时,一般来说,().

A.将产生二义性

B.派生类的同名成员将覆盖基类的成员

C.是不能允许的

D.基类的同名成员将覆盖派生类的成员

答:————

111.[单选题] 下列关于运算符重载的描述中,正确的是().

A.运算符重载可以改变操作数的个数

B.运算符重载可以改变优先级

C.运算符重载可以改变结合性

D.运算符重载不可以改变语法结构

答:————

112.[单选题] 下列关于模板的描述,错误的是().

A.模板把数据类型作为一个设计参数

B.模板定义中支持多个参数类型

C.模板定义中只能支持一个参数

D.模板参数列表中可以有类型参数和非类型参数

答:————

113.[单选题] read函数的功能是从输入流中读入().

A.一个字符

B.当前字符

C.一行字符

D.指定若干字符

答:————

114.[单选题] 要求打开文件”D:\file.dat”,并能写入数据的正确语句是().

A.if streamin file(“D:\\file.data”,ios::in);

B.if streamin file(“D:\\file.data”,ios::out);

C.of streamin file(“D:\\file.data”,ios::out);

D.if streamin file(“D:\\file.data”,ios::in|ios::out);

答:————

115.[单选题] 编译器将C++源代码翻译为().

A.目标文件

B.可执行文件

C.头文件

D.资源文件

答:————

116.[单选题] C++源程序文件的缺省扩展名为().

A..lib

B..obj

C..exe

D..cpp

答:————

117.[单选题] 假定一个二维数组的定义语句为”int a[3][4]={{3,4},{2,8,6}};”,则元素a[1][2]的值为().

A.2

B.4

C.6

D.8

答:————

118.[单选题] 函数重载是指().

A.两个或两个以上的函数取相同的函数名,但形参的个数或类型不同

B.两个以上的函数取相同的名字和具有相同的参数个数,但形参的类型可以不同

C.两个以上的函数名字不同,但形参的个数或类型相同

D.两个以上的函数取相同的函数名,并且函数的返回类型相同

答:————

119.[单选题] 假定AA为一个类,a为该类公有的数据成员,x为该类的一个对象,则访问x对象中数据成员a的格式为().

A.x(a)

B.x[a]

C.x->a

D.x.a

答:————

120.[单选题] 类的实例化是指().

A.定义类

B.创建类的对象

C.调用类的成员

D.指明具体类

答:————

121.[问答题] 写出下面程序的执行结果.#include using namespace std;int f(int n){if(n<=0) throw n;int s=1;for(int i=1;i<=n;i++) s*=i;return s;}int main(){try{ cout<<“4!=“< 答:————

122.[问答题] 下面程序执行后,假定用户输入”Every student love C++”,写出程序执行后文件”D:\1.txt”中存储的内容.#include #include using namespace std;int main(){char buf[100];cin>>buf;ofstream of;of.open(“D:\\1.txt”);of< 答:————

123.[问答题] 写出下面程序的执行结果.#include int main(){int number = 267;int digit, tens, hundreds;digit = number %10;tens = (number/10)%10;hundreds = (number/100)%10;cout<<“Result: “< 答:————

124.[问答题] 写出下面程序的执行结果.#include using namespace std;double func( double pData[ ], int size);int main(){ double array[]={2.2, 3.8, 6, 5.4}; cout<<“Result: “< 答:————

125.[问答题] 写出下面程序的输出结果.#include using namespace std;class Base {public:void display() {cout<<“Base display”< 答:————

126.[问答题] 写出程序输出结果.#include using namespace std;class Base{private:int base;public:Base(int b) {base=b;cout<<“base=“< 答:————

赞(0)
未经允许不得转载:奥鹏作业网 » 地大《面向对象程序设计》考试模拟题【标准答案】

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址