【计算机类职业资格】二级C++模拟496及答案解析.doc

上传人:dealItalian200 文档编号:1324425 上传时间:2019-10-17 格式:DOC 页数:25 大小:94.50KB
下载 相关 举报
【计算机类职业资格】二级C++模拟496及答案解析.doc_第1页
第1页 / 共25页
【计算机类职业资格】二级C++模拟496及答案解析.doc_第2页
第2页 / 共25页
【计算机类职业资格】二级C++模拟496及答案解析.doc_第3页
第3页 / 共25页
【计算机类职业资格】二级C++模拟496及答案解析.doc_第4页
第4页 / 共25页
【计算机类职业资格】二级C++模拟496及答案解析.doc_第5页
第5页 / 共25页
点击查看更多>>
资源描述

1、二级 C+模拟 496及答案解析(总分:182.00,做题时间:90 分钟)一、选择题(总题数:40,分数:72.00)1.下列关于队列的叙述中正确的是(分数:1.00)A.在队列中只能插入数据B.在队列中只能删除数据C.队列是先进先出的线性表D.队列是先进后出的线性表2.下列选项中,错误的 C+表达式是_。(分数:2.00)A.a+B.“b“=10C.double(3/5)D.x+!=3|y3.有如下程序: #includeiostream using namespace std; class B public: virtual void show()cout“B“; ; class D:p

2、ublic B public: void show()cout“D“; ; void fun1(B *ptr)ptr-show(); void fun2(B void fun3(B b)b.show(); int main() B b.*p=new D; D d; fun1(p); fun2(b); fun3(d); return 0; 程序的输出结果是_。(分数:2.00)A.BBBB.BBDC.DBBD.DBD4.执行下列语句段后,输出字符“*“的个数是_。 for(int i=50;i1;i-=2)cout“*“;(分数:2.00)A.24B.25C.26D.505.关于纯虚函数,下列表

3、述中正确的是_。(分数:2.50)A.纯虚函数是没有给出实现版本(即无函数体定义)的虚函数B.纯虚函数的声明总是以“=0;”结束C.派生类必须实现基类的纯虚函数D.含有纯虚函数的类不可能是派生类6.下列语句中,与语句“n=(ab?(bc?1:0):0);”的功能等价的是 _ 。(分数:2.00)A.if(a=B) n=0;B.if(aB) |(bC) )n=1; else n=0;C.if(aB) if(bC) n=h else n=0; else n=0;D.if(aB) n=1; else if(b=C) n=1; else if(bC) n=1; else n=0;7.下列关于 this

4、指针的叙述中,正确的是 _ 。(分数:2.00)A.任何与类相关的函数都有 this指针B.类的成员函数都有 this指针C.类的友元函数都有 this指针D.类的非静态成员函数才有 this指针8.有如下程序: #includeiostream using namespace std; class AA public: AA()cout“1“; ; class BB:public AA int k; public: BB():k(0) cout“2“; BB(int n):k(n) cout“3“; ; int main() BB b(4),c; return 0; 运行时的输出结果是_。(

5、分数:3.00)A.1312B.132C.32D.14129.已知 Value是一个类,Value 是 Value的一个对象。下列以非成员函数形式重载的运算符函数原形中,正确的是_。(分数:1.00)A.Value operator+(Value v,int i);B.Value operator+(Value v=value,int i);C.Value operator+(Value vint i=0);D.Value operator+(Value v=value,int i=0);10.有如下程序段: int i=1; while(1) i+; if(i=10)break; if(i%

6、2=0)cout“*“; 执行这个程序段输出字符“*“的个数是_。(分数:2.50)A.10B.3C.4D.511.有以下程序: class Date public: Date(int y,int m,int d); year=y; month=m; day=d; Date(int y=2000) year=y; month=10; day=1; Date(Dated) year=d.year; month=d.month; day=d.day; void print() coutyear“.“month“,“dayendl; private: int year,month,day;); Da

7、te fun(Date d) Date temp; temp=d; return temp; int main() Date date1(2000,1,1),date2(0,0,0); Date date3(date1); date2=fun(date3); return 0; 程序执行时,Date 类的复制构造函数被调用的次数是_。(分数:1.00)A.2B.3C.4D.512.下列关于宏的叙述中正确的是_。(分数:2.50)A.宏名必须用大写字母表示B.宏定义必须位于源程序中所有语句之前C.宏替换没有数据类型限制D.宏调用比函数调用耗费时间13.若有如下程序: #includeiostre

8、am using narnespace std; class TestClass public: void who()cout“TestClass“endl; ; class TestClassl: public TestClass public: void who()cout“TestClass1“endl; int main() TestClass*p; TcstClass1 obj1; p=obj1; p-who(); return 0; 则该程序运行后的输出结果是_。(分数:1.00)A.TestClasslB.TestClassC.0D.无输出14.关于函数重载,下列叙述中错误的是_

9、。(分数:3.00)A.重载函数的函数名必须相同B.重载函数必须在参数个数或类型上有所不同C.重载函数的返回值类型必须相同D.重载函数的函数体可以有所不同15.Windows环境下,由 C+源程序文件编译而成的日标文件的扩展名是_。(分数:2.50)A.cppB.exeC.objD.lik16.有下列程序: #include stdio.h int fun(int (*s)4,int n,int k) int m,i; m=s0k; for(i=1;in;i+) if(sikm)m=sik; return m; void main() int a44=1,2,3,4),11,12,13,14,

10、21,22,23,24,31,32,33,34; printf(“%d/n“,fun(a,4,0); 程序的运行结果是_。(分数:2.50)A.4B.34C.31D.3217.已知将运算符“+”和“*”作为类 Complex的成员函数重载,设 c1和 c2是类 Complex的对象,则表达式 c1+c2*c1等价于_。(分数:2.00)A.c1.operator*(c2.operator+(c1)B.c1.operator+(c2.operator*(c1)C.c1.operator*(c1.operator+(c2)D.c2.operator+(c1.operator*(c1)18.若 My

11、Class为一个类,执行“MyClass a4,*p5;”语句时会自动调用该类构造函数的次数是_。(分数:2.00)A.2B.5C.4D.919.软件设计中划分模块的一个准则是_。(分数:1.00)A.低内聚低耦合B.高内聚低耦合C.低内聚高耦合D.高内聚高耦合20.下面关于 break语句的描述中,不正确的是_。(分数:1.00)A.break可以用于循环体内B.break语句可以在 for循环语句中出现多次C.break语句可以在 switch语句中出现多次D.break语句可用于 if条件判断语句内21.在每个 C+程序中必须有且仅有一个_。(分数:2.50)A.函数B.主函数C.预处理

12、指令D.语句22.下列关于栈的叙述正确的是_。(分数:1.00)A.栈按“先进先出”组织数据B.栈按“先进后出”组织数据C.只能在栈底插入数据D.不能删除数据23.有两个关系 R和 S如下: (分数:2.50)A.选择B.投影C.自然连接D并24.下列不属于软件工程过程的基本活动的是 _ 。(分数:1.00)A.软件规格说明B.软件开发C.软件确认D.软件需求分析25.有如下类定义: class MyClass Int value; public; MyClass(int n):value(n) int gerValue()constreturn value; ; 则类 MyClass的构造函

13、数的个数是_。(分数:2.00)A.1个B.2个C.3个D.4个26.下列语句都是程序运行时的第 1条输出语句,其中一条语句的输出效果与其他三条语句不同,该语句是_。(分数:2.00)A.coutinternal12345;B.coutleft12345;C.coutright12345;D.coutsetw(6)12345;27.C+系统预定义了 4个用于标准数据流的对象,下列选项中不属于此类对象的是_。(分数:1.00)A.coutB.cinC.cerrD.cset28.若有定义语句“int i=2,j=3;”,则表达式 i/j的结果是_。(分数:1.00)A.0B.0.7C.0.6666

14、7D.0.6666666729.已知类 MyClass的定义如下: class MyClass public: MyCtass(int d)data=d; MyClass() private: int data; ; 下列对 MyClass类对象数组的定义和初始化语句中,正确的是_。(分数:2.00)A.MyClass array2;B.MyClass array2=MyClass(5);C.MyClass array2=MyClass(5),MyClass(6),;D.MyClass*arrays=new MyClass2;30.判断字符型变量 ch是否为大写英文字母,应使用表达式_。(分数

15、:2.00)A.ch=“A“ ; void main() A*a=new B(8); Delete a; (分数:2.00)A.call B: B()B.call B: B()C.call A:A()D.call A:A()32.下列语句中,错误的是_。(分数:1.00)A.const int buffer=256;B.const double*point;C.int const buffer=256;D.double*const point;33.下列语句分别是不同程序中的第一个输入输出语句。若去掉其中的“left”,输出效果将发生变化的是(分数:2.00)A.coutleftsetfill

16、(“*“)357;B.coutleftsetw(5)357;C.coutleftsetw(5)“ABCDE“;D.coutleft“ABCDE“;34.已知类 Time的定义如下: class Time/时间类 private: int hour, minute, second; /时、分、秒 public: Time(int h, int m, int s): hour(h), minute(m), second(s) _ switch(index) case 0: return hour; case 1: return minute; default: return second; ; 其

17、中横线处应为下标访问运算符的重载函数的函数头,横线处应填入的代码是_。(分数:2.50)A.int定义了指针 p,与这个语句等效的语句序列是_。(分数:1.00)A.int*p;p=B.int*p;p=k;C.int*p;*p=D.int*p;*p=k;37.按照标识符的要求,下列选项中, _ 符号不能组成标识符。(分数:2.00)A.连接符B.下划线C.大小写字母D.数字字符38.下列关于 C+流的叙述中,正确的是(分数:2.00)A.与键盘、屏幕、打印机和通信端口的交互都可以通过流类来实现B.从流中获取数据的操作称为插入操作,向流中添加数据的操作称为提取操作C.cin是一个预定义的输入流类

18、D.输出流有一个名为 open的成员函数,其作用是生成一个新的流对象39.数据库系统的三级模式不包括_。(分数:1.00)A.概念模式B.内模式C.外模式D.数据模式40.有如下语句序列: int x=100, coutx“-“rendl; 已知其中变量 x的地址为 0012FF7C,则执行该语句序列的输出结果为_。(分数:2.00)A.100-100B.100-0012FF7CC.0012FF7C-100D.0012FFTC-0012FFTC二、基本操作题(总题数:1,分数:40.00)41.请使用 VC6或使用【答题】菜单打开 proj1 下的工程 proj1,此工程包含一个源程序文件pr

19、oj1.cpp。文件中将表示数组元素个数的常量 Size定义为 4,并用 int类型对类模板进行了实例化。文件中位于每个注释“/ ERROR *found*”之后的一行语句存在错误。请改正这些错误,使程序的输出结果为: 1 2 3 4 注意:模板参数名用 T。只修改注释“/ ERROR *found*”的下一行语句,不要改动程序中的其他内容。 /proj1.cpp #include iostream using namespace std; /将数组元素个数 Size定义为 4 / ERROR *found* const int Size; template typename T class

20、MyClass public: MyClass (T * p) for(int i=0;i Size;i +) arrayi = pi; void Print(); private: T arraySize; ; template typename T / ERROR *found* void MyClass:Print() for(int i = 0;i Size;i +) cout arrayi “/t“; int main() int intArraySize = 1,2,3,4; / ERROR *found* MyClass double obj (intArray); obj.Pr

21、int(); cout endl; return 0; (分数:40.00)_三、简单应用题(总题数:1,分数:30.00)42.请使用 VC6或使用【答题】菜单打开 proj2 下的工程 proj2,其中定义了 Employee类和 Manager类。Employee用于表示某公司的雇员,其属性包括姓名(name)和工作部分(dept)。Manager 是 Employee的公有派生类,用于表示雇员中的经理。除了姓名和工作部分之外,Manager 的属性还包括级别(level)。Employee类的成员函数 print用于输出雇员的信息;Manager 类的成员函数 print负责输出经理的

22、信息。请在横线处填写适当的代码,然后删除横线,以实现上述类定义。此程序的正确输出结果应为: Name:Sally Smith Dept:Sales Level:2 注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动“/ *found*”。 #include iostream #include string using namespace std; class Employee public: Employee (string name, string dept): / *found* _ virtual void print() const; string dept(

23、) const /返回部门名称 / *found* _ virtual Employee() private: string name_; string dept_; ; class Manager: public Employee public: Manager (string name, string dept, int level): / *found* _ virtual void print() const; private: int level; ; void Employee:print() const cout “Name:“ name_ endl; cout “Dept:“

24、dept_ endl; void Manager:print() const / *found* cout “Level:“ level_ endl; int main() Employee * emp = new Manager(“Sally Smith“, “Sales“, 2); emp - print(); delete emp; return 0; (分数:30.00)_四、综合应用题(总题数:1,分数:40.00)43.使用 VC+6.0打开 下的源程序文件 3.cpp。其中定义的类不完整,按要求完成下列操作,将类的定义补充完整。 (1)在类 TC中定义 name为字符串类型,ag

25、e 为 int型,请在注释 1之后添加语句。 (2)设置类 TC0的基类为 TC类的定义,请在注释 2后添加语句。 (3)在类 TC的派生类 TC0的公有成员中定义析构函数 TC0,请在注释 3后添加语句。 (4)设置类 TC1的基类为 TC 类的定义,请在注释 4后添加语句。 程序输出结果为: TC class constructor TC0 class constructor TC on class constructor TC1 class constructor TC1class constructor TC class constructor TC0 class constructo

26、r TC class constructor 注意:增加或者修改代码的位置已经用符号表示出来,请不要修改其他的程序代码。 试题程序: #includeiostream.h class TC /*1* public: TC() cout “TC class constructor“ endl; TC() cout “TC class constructor“ endl; ; /*2* char *departmert; int level; public: TC0() cout “TC0 class constructor“ endl; /*3* cout “TC0 class construc

27、tor“ endl; ; /*4* char *major; float salary; public: TC1() cout “TC1 class constructor“ endl; TC1() cout “TC1 class constructor“ endl; ; void main() TC0 s1; TC1 t1; (分数:40.00)_二级 C+模拟 496答案解析(总分:182.00,做题时间:90 分钟)一、选择题(总题数:40,分数:72.00)1.下列关于队列的叙述中正确的是(分数:1.00)A.在队列中只能插入数据B.在队列中只能删除数据C.队列是先进先出的线性表 D.

28、队列是先进后出的线性表解析:解析 队列是指允许在一端进行插入、而在另一端进行删除的线性表,选项 A和选项 B错误。允许插入的一端称为队尾,允许删除的一端称为队头。在队列中,最先插入的元素将最先能够被删除,反之,最后插入的元素将最后才能被删除。所以,队列又称为“先进先出”或“后进后出”的线性表,它体现了“先来先服务”的原则,选项 C正确,选项 D错误。2.下列选项中,错误的 C+表达式是_。(分数:2.00)A.a+B.“b“=10 C.double(3/5)D.x+!=3|y解析:3.有如下程序: #includeiostream using namespace std; class B pu

29、blic: virtual void show()cout“B“; ; class D:public B public: void show()cout“D“; ; void fun1(B *ptr)ptr-show(); void fun2(B void fun3(B b)b.show(); int main() B b.*p=new D; D d; fun1(p); fun2(b); fun3(d); return 0; 程序的输出结果是_。(分数:2.00)A.BBBB.BBDC.DBB D.DBD解析:解析 此题考查的是虚函数与多态性。在成员函数的声明前面加上 virual关键字,即可

30、把函数声明为虚函数;在 C+中,一个基类指针可以用于指向它的派生类对象,而且通过这样的指针调用虚函数时,被调用的是该指针实际所指向的对象类的那个重定义版本。此题中,fun1()和 fun2()的形参分别是基类的指针和引用,给 fun1()传入的实参是指向派生类对象的指针 p,fun1()将调用 D类中的 show()输出字符D;给 fun2()出入的实参是基类对象,fun2()调用类 B中的 show()输出字符B;fun3()由于形参是基类对象,调用的始终都是基类的 show(),输出字符B。故最终输出结果是 DBB。4.执行下列语句段后,输出字符“*“的个数是_。 for(int i=50

31、;i1;i-=2)cout“*“;(分数:2.00)A.24B.25 C.26D.50解析:5.关于纯虚函数,下列表述中正确的是_。(分数:2.50)A.纯虚函数是没有给出实现版本(即无函数体定义)的虚函数B.纯虚函数的声明总是以“=0;”结束 C.派生类必须实现基类的纯虚函数D.含有纯虚函数的类不可能是派生类解析:6.下列语句中,与语句“n=(ab?(bc?1:0):0);”的功能等价的是 _ 。(分数:2.00)A.if(a=B) n=0;B.if(aB) |(bC) )n=1; else n=0;C.if(aB) if(bC) n=h else n=0; else n=0; D.if(a

32、B) n=1; else if(b=C) n=1; else if(bC) n=1; else n=0;解析:解析 条件表达式(ab?(bc?1:0):0)的含义是,如果 ab 成立,则此表达式的值等于条件表达式(bc?1:0)的值,否则其值等于 0。而条件表达式(bc?1:0)的含义是,如果 bc 成立,其值等于1,否则其值等于 0。7.下列关于 this指针的叙述中,正确的是 _ 。(分数:2.00)A.任何与类相关的函数都有 this指针B.类的成员函数都有 this指针C.类的友元函数都有 this指针D.类的非静态成员函数才有 this指针 解析:解析 本题考查 this指针的使用。

33、类的每一个成员函数都有一个隐含的常量指针,即 this指针。类的静态成员函数不能含有 this指针,因为 this指针是一个指向本对象的指针。8.有如下程序: #includeiostream using namespace std; class AA public: AA()cout“1“; ; class BB:public AA int k; public: BB():k(0) cout“2“; BB(int n):k(n) cout“3“; ; int main() BB b(4),c; return 0; 运行时的输出结果是_。(分数:3.00)A.1312 B.132C.32D.1

34、412解析:解析 在基类 AA的默认构造函数中,输出字符1,在继承类 BB的默认构造函数中,输出字符2,在带有参数 n的构造函数中,输出字符3。在主函数中,在创建 BB的对象 b(4)时,会首先调用基类 AA的构造函数输出字符1,再调用类 BB带参数的构造函数输出字符3。在创建 BB的对象c时,会首先调用基类 AA的构造函数输出字符1,再调用类。BB 默认的构造函数输出字符2。所以程序输出的结果为 1312。9.已知 Value是一个类,Value 是 Value的一个对象。下列以非成员函数形式重载的运算符函数原形中,正确的是_。(分数:1.00)A.Value operator+(Value

35、 v,int i);B.Value operator+(Value v=value,int i); C.Value operator+(Value vint i=0);D.Value operator+(Value v=value,int i=0);解析:解析 非成员函数的重载运算符函数的格式为 operator+(),是运算符十重载函数。10.有如下程序段: int i=1; while(1) i+; if(i=10)break; if(i%2=0)cout“*“; 执行这个程序段输出字符“*“的个数是_。(分数:2.50)A.10B.3C.4 D.5解析:解析 本题是一个 while循环和

36、 break语句的综合应用问题。题中,while 循环条件为 1,即条件永恒成立,只有执行到循环体中的 break语句,才能结束循环。也就是 2到 9范围内能被 2整除的数有几个,就输出几个字符*。所以,共输出 4个字符*。11.有以下程序: class Date public: Date(int y,int m,int d); year=y; month=m; day=d; Date(int y=2000) year=y; month=10; day=1; Date(Dated) year=d.year; month=d.month; day=d.day; void print() cout

37、year“.“month“,“dayendl; private: int year,month,day;); Date fun(Date d) Date temp; temp=d; return temp; int main() Date date1(2000,1,1),date2(0,0,0); Date date3(date1); date2=fun(date3); return 0; 程序执行时,Date 类的复制构造函数被调用的次数是_。(分数:1.00)A.2B.3 C.4D.5解析:解析 本题复制构造函数一共被调用了三次:第一次是在执行语句 Date date3(date1);时,

38、用已经建立的对象 date1对正在建立的对象 date3进行初始化;第二次是在调用 fun函数时,由于是传值调用,因此实参对象 date3要对形参对象 d进行初始化;第三次是在执行 fun函数中的返回语句 return temp;时,系统初始化一个匿名对象时使用了复制构造函数。12.下列关于宏的叙述中正确的是_。(分数:2.50)A.宏名必须用大写字母表示B.宏定义必须位于源程序中所有语句之前C.宏替换没有数据类型限制 D.宏调用比函数调用耗费时间解析:解析 本题考查宏的相关知识点。宏名没有大小写限制;宏定义可以放在程序中的任何位置,其有效范围是从定义开始到文件结束;宏替换可以代替任何数据类型

39、,不受数据类型的限制;函数影响运行时间,宏调用影响编译时间。13.若有如下程序: #includeiostream using narnespace std; class TestClass public: void who()cout“TestClass“endl; ; class TestClassl: public TestClass public: void who()cout“TestClass1“endl; int main() TestClass*p; TcstClass1 obj1; p=obj1; p-who(); return 0; 则该程序运行后的输出结果是_。(分数:1

40、.00)A.TestClassl B.TestClassC.0D.无输出解析:解析 程序中的 TestClassl为 TestClass的派生类,主函数 maln中定义 TestClass对象*p,TestClass1 对象 obj1,然后 p引用 obj1,执行 p-who()则是调用基类中的 who函数,输出TestClass。14.关于函数重载,下列叙述中错误的是_。(分数:3.00)A.重载函数的函数名必须相同B.重载函数必须在参数个数或类型上有所不同C.重载函数的返回值类型必须相同 D.重载函数的函数体可以有所不同解析:解析 此题考查的是函数重载。在 C+语言中,允许定义一系列函数名

41、相同,但形参的个数和类型不完全相同的函数,即函数的重载。重载函数对返回值类型不做要求,返回值类型也不参与区分函数的重载形式。15.Windows环境下,由 C+源程序文件编译而成的日标文件的扩展名是_。(分数:2.50)A.cppB.exeC.obj D.lik解析:解析 cpp 是 C+源文件的扩展名;exe 是可执行文件的扩展名;lik 是连接文件的扩展名。16.有下列程序: #include stdio.h int fun(int (*s)4,int n,int k) int m,i; m=s0k; for(i=1;in;i+) if(sikm)m=sik; return m; void

42、 main() int a44=1,2,3,4),11,12,13,14,21,22,23,24,31,32,33,34; printf(“%d/n“,fun(a,4,0); 程序的运行结果是_。(分数:2.50)A.4B.34C.31 D.32解析:解析 在程序中 fun函数的功能在于求取二维数组 s中 1至 n行中每行第 k个元素中的最大者。注意:i=0 时为第一行,故 fun(a,4,0)在于求取 11、21、31 中的最大值,显然为 31。17.已知将运算符“+”和“*”作为类 Complex的成员函数重载,设 c1和 c2是类 Complex的对象,则表达式 c1+c2*c1等价于_

43、。(分数:2.00)A.c1.operator*(c2.operator+(c1)B.c1.operator+(c2.operator*(c1) C.c1.operator*(c1.operator+(c2)D.c2.operator+(c1.operator*(c1)解析:解析 表达式 c1+c2*c1的含义是 c1加上 c2与 c1的积。18.若 MyClass为一个类,执行“MyClass a4,*p5;”语句时会自动调用该类构造函数的次数是_。(分数:2.00)A.2B.5C.4 D.9解析:解析 语句 MyClass a4,*p5不仅定义了 4个 MyClass对象,分别为 a0,a

44、1,a2,a3,而且定义了 5个指向 MyClass对象的指针变量,分别为*p0,*p1,*p2,*p3,*p4,所以共调用MyClass的构造函数 4次。19.软件设计中划分模块的一个准则是_。(分数:1.00)A.低内聚低耦合B.高内聚低耦合 C.低内聚高耦合D.高内聚高耦合解析:解析 一般较优秀的软件设计,应尽量做到高内聚,低耦合,即减弱模块之间的耦合性和提高模块内的内聚性,有利于提高模块的独立性。20.下面关于 break语句的描述中,不正确的是_。(分数:1.00)A.break可以用于循环体内B.break语句可以在 for循环语句中出现多次C.break语句可以在 switch语句中出现多次D.break语句可用于 if条件判断语句内 解析:解析 本题考查 break语句的使用。break 可以结束 switch语句和 for循环语句,但是不能使用在条件判断语句内。21.在每个 C+程序中必须有且仅有一个_。(分数:2.50)A.函数B.主函数 C.预处理指令D.语句解析:解析 在每一个 C+程序中必须有且只有一个主函数,每个程序的执行都是从主函数的开始。22.下列关于栈的叙述正确的是_。(分数:1.00)A.栈按“先进先出”组织数据B.栈按“先进后出”组织数据 C.只能在栈底插入数据D.不能删除数据解析:解析 栈是按“先进后出”的原则组织数据的,数

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1