欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    c++期末考试复习题-2.doc

    • 资源ID:35896768       资源大小:88KB        全文页数:15页
    • 资源格式: DOC        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    c++期末考试复习题-2.doc

    一、 填空题1.C+中有两种数据类型: ( 整型 )和 ( 字符型 )可以使用signed修饰符。在C+中,用数组、指针、和( 引用 )作为函数参数,能够将参数值带回。2.为了降低函数调用的时间开销,建议将小的调用频繁的函数定义为(内联函数 ),方法是在函数类型前加上( inline )关键字。3.面向对象的程序设计有四大特征,它们是抽象、封装、( 继承 )、( 多态 )。4.拷贝构造函数是在用一个对象初始化另一个对象时被调用,系统缺省的拷贝构造函数的工作方法是( 拷贝每一个数据成员 )。或逐一拷贝5.用new申请某一个类的动态对象数组时,在该类中必须能够匹配到( 默认 )构造函数,否则应用程序会产生一个编译错误。6.静态数据成员必须在类外进行初始化,且静态数据成员的一个拷贝被类的所有对象( 共享 )。7.在C+中,定义重载函数时,应至少使重载函数的参数个数或参数类型( 有一个不同 )。8.在C+中,虽然友元提供了类之间数据进行访问的一种方式,但它破坏了面向对象程序设计的( 封装 )特性。9.预编译指令由三种,它们是:文件包含、 ( 宏定义)(条件编译)11.在C+中,函数的参数有两种传递方式,它们是值传递和( 引用传递 )。12.当非静态成员函数被调用时,该成员函数的( this指针 )指向调用它的对象。13.拷贝构造函数使用( 一个已经存在的对象 )作为参数初始化创建中的对象。14.在公有继承的情况下,基类数据成员在派生类中的访问权限( 保持不变 )。15.在C+中,构造派生类对象时,总是先从( 基类 )的初始化开始的。16.当需要统计程序中某个类创建对象的个数时,需要给该类定义( 静态数据 )成员。17.在多个类之间有重复继承时,为避免被重复继承的基类数据成员在内存中有多个拷贝,应将该基类定义为( 虚基类 )。18.在C+类中,有一种不能定义对象的类,这样的类只能被继承,称之为( 抽象类 ),定义该类至少具有一个( 纯虚函数 )。19.在C+中构造一个对象时,其数据成员在构造函数中初始化。对于内嵌的对象、 ( 常量) ( 基类)数据成员需要在构造函数的成员初始化列表中初始化。 20.在类的定义中,说明为protected的数据成员称为保护成员。保护数据成员具有双重作用:对于其派生类而言, (是公有的);而对于其外部的程序而言, ( 是私有的 )。22.如果s是int型变量,且s=6,则下面s%2+(s+1)%2表达式的值为_1 _。23已知字母a的ASCII码为十进制数97,且设ch为字符型变量,则表达式ch=a+4的值为_ e_。24数组与函数参数联系密切,当用数组元素作函数参数时,这是属于值传递;当数组名作为参数时,这是属于 引用 传递,对形参的改变可影响到实参。25利用“对象名.成员变量”形式访问的对象成员仅限于被声明为 public 的成员;若要访问其他成员变量,需要通过 成员 函数或友元函数函数。26一个_类_和_对象_的关系,正如基本数据类型与该类型的变量一个。27类成员的默认访问方式是_私有_ _. 28一个类有_多个_个构造函数,有_一个_析构函数。29类的_静态_成员函数不能对类中的非静态成员进行默认访问。30如果说明类B是类A的友元类,则类B的所有成员函数都是类A的_友元函数_。32类有两种用法:一种是类的实例化,即生成类的_对象_ ;另一种是通过_继承_派生出新的类。34如果一个类中有一个或多个纯虚函数,则这个类称为_抽象类_。36设所有变量均为整型,则表达式(e=2,f=5,e+,f+,e+f)的值为_9_。37已知c的ASCII码为十进制数99,设k为字符型变量,则表达式k=c+1的值为_d_。38函数的形参在未被调用之前 不会 分配空间,函数的形参的 个数和类型 要和实参的相同。39类的成员分为数据成员和_成员函数_。40类完成了面向对象程序设计的_封装_特性。41构造函数是_对象_被创建时自动执行,对象消失时自动执行的成员函数称为_析构函数_对象 42C+将类继承分为 单继承 和 多继承 两种。43在继承机制下,当对象消亡时,编译系统先执行 派生类 的析构函数,然后才执行派生类中子对象类的析构函数,最后执行 基类 的析构函数。44类的_public_数据成员是类所有对象共享的成员。45友元函数_不是_类的成员函数。(是/不是)46如果类A继承了类B,则类A称为_派生类_,类B称为_基类_。48_纯虚函数_是一个在基类中说明的虚函数,但未给出具体的实现,要求在其派生类实现。二、选择题1面向对象的( B )是一种信息隐蔽技术,目的在于将对象的使用者与设计者分开。不允许使用者直接存取对象的属性,只能通过有限的接口与对象发生联系。A多态性 B封装性 C继承性 D重用性2C+的合法注释是( B )。A/*This is a C program/* B/ This is a C programC “This is a C program” D/*This is a C program/3关于C+和C语言的描述中,( D )是错误的?AC是C+的一个子集 B C程序在C+环境可以运行C C+程序在C环境可以运行 D C+是面向对象的而C是面向过程的4运算符 +、<=、=、% 中,优先级最低的运算符是( C )。A. + B.<= C.= D.% 5已知a=4,b=6,c=8,d=9,则“(a+,b>a+&&c>d)?+d:a<b” 值为( D )。A9 B6 C8 D0 (假)6对while、dowhile循环结构,下面说法正确的是( B )。 A只是表达形式不同Bdowhile结构中的语句至少执行一次(先执行后判断)Cwhile结构中的语句至少执行一次 D条件成立时,它们有可能一次也不执行7对中断语句的说法下面不正确的是( B )。A用户可以指定中断的位置 B用户可以指定转移的位置Cbreak语句可以跳出本循环 Dcontinue语句可以结束本次循环8以下正确的说法是( )。A用户若需要调用标准函数,调用前必须重新定义B用户可以直接调用所有标准库函数 C用户可以定义和标准库函数重名的函数,但是在使用时调用的是系统库函数D用户可以通过文件包含命令将系统库函数包含到用户源文件中,然后调用系统库函数9下列哪个不是重载函数在调用时选择的依据( )。A参数类型 B参数个数 C函数类型 D函数名10对数组名作函数的参数,下面描述正确的是(B)。A数组名作函数的参数,调用时将实参数组复制给形参数组B数组名作函数的参数,主调函数和被调函数共用一段存储单元C数组名作参数时,形参定义的数组长度不能省略D数组名作参数,不能改变主调函数中的数据11如果x是整型变量,则合法的形式是( D )。A(x+5)B*xC&*xD*&x12在定义一个共用体变量时,系统为其分配存储空间的原则是(B)。A按所有成员需要的存储空间总和分配。B.按成员中占存储空间最大者分配。C按成员占存储空间最小者分配。 D.按第一个成员所需的存储空间分配。13下面( B )项是对构造函数和析构函数的正确定义。Avoid X:X(), void X:X()BX:X(参数), X:X() (析构括号没参数)CX:X(参数), X:X(参数)Dvoid X:X(参数), void X:X(参数)14拷贝构造函数具有的下列特点中,( D )是错误的。A  如果一个类中没有定义拷贝构造函数时,系统将自动生成一个默认的B  拷贝构造函数只有一个参数,并且是该类对象的引用C. 拷贝构造函数是一种成员函数D. 拷贝构造函数的名字不能用类名15类的析构函数的作用是( D )。A.一般成员函数 B.类的初始化 C.对象初始化 D.删除对象16下列对派生类的描述中,( D )是错误的。A一个派生类可以作为另一个派生类的基类B派生类至少有一个基类C派生类的成员除了它自己的成员外,还包含了它的基类成员D派生类中继承的基类成员的访问权限到派生类保持不变17继承具有( B ),即当基类本身也是某一个类派生类时,底层的派生类也会自动继承间接基类的成员。A规律性 B.传递性 C.重复性 D.多样性18C+类体系中,能被派生类继承的是( B )。A构造函数 B虚函数 C析构函数 D友元函数19下列关于动态联编的描述中,错误的是(D)。 A动态联编是以虚函数为基础 B动态联编是运行时确定所调用的函数代码的 C动态联编调用函数操作是指向对象的指针或对象引用 D动态联编是在编译时确定操作函数的(如果已经确定还谈什么动态)20关于纯虚函数和抽象类的描述中,错误的是( C )。 A纯虚函数是一种特殊的虚函数,它没有具体的实现 B抽象类是指具有纯虚函数的类 C一个基类中说明有纯虚函数,该基类派生类一定不再是抽象类(如果派生类没有重新定义纯虚函数,而派生类只是继承基类的纯虚函数,则这个派生类仍然还是一个抽象类)D. 抽象类只能作为基类来使用,其纯虚函数的实现由派生类给出21C+源文件的扩展名为( A )。Acpp Bc Ctxt Dexe22在C+语言中,( A )的陈述是正确的。A能使用关键字并区分大小写 B能使用关键字并不区分大小写C 不能使用关键字并区分大小写 D不能使用关键字并不区分大小写23运算符+、=、*、>=中,优先级最高的运算符是( C)。A+ B= C* D>=24下列不合法的变量名为( A )。Aint Bint1 Cname_1 Dname025已知x=43,ch=A,y=0;则表达式(x>=y&&ch<B&&!y)的值是( C)。A0 B语法错 C1 (!y=!0=1只有!0为1,其他都为0) D“假”26以下不正确的是( C )。 A语句for(i=0;i+)表示无限循环 Bfor(;)表示无限循环Cfor()也表示无限循环 (B才对) Dwhile(1)表示无限循环27在函数的返回值类型与返回值表达式的类型的描述中,错误的是( )。A.函数返回值的类型是在定义函数时确定,在函数调用时是不能改变的B.函数返回值的类型就是返回值表达式的类型(看ACD)C.函数返回值表达式类型与返回值类型不同时,函数表达式类型应转换成返回值类型D.函数返回值类型决定了返回值表达式的类型28如果一个函数无返回值,定义时它的函数类型应是(C)。A任意 Bint Cvoid D无29在C+语言中,关于参数默认值的描述正确的是(B)。A只能在函数定义时设置参数默认值B设置参数默认值时,应当从右向左设置(如int a,b,c=1,d=33)C设置参数默认值时,应当全部设置D设置参数默认值后,调用函数不能再对参数赋值30若有以下定义,则说法错误的是( D )。 int a=100,*p=&a ;A声明变量p,其中*表示p是一个指针变量B变量p经初始化,获得变量a的地址C变量p只可以指向一个整形变量D变量p的值为100 (获得变量a的地址)31列关于结构体的说法错误的是( D)。A结构体是由用户自定义的一种数据类型B结构体中可设定若干个不同数据类型的成员C结构体中成员的数据类型可以是另一个已定义的结构体D在定义结构体时,可以为成员设置默认值32下列有关类的说法不正确的是( C )。A  对象是类的一个实例B  任何一个对象只能属于一个具体的类C  一个类只能有一个对象D 类与对象的关系和数据类型与变量的关系相似33( C )的功能是对象进行初始化。A析构函数 B. 数据成员 C.构造函数 D.静态成员函数34关于友元的描述中,( A )是错误的。A  友元函数是成员函数 (不能),它被说明在类体内B   友元函数可直接访问类中的私有成员C   友元函数破坏封装性,使用时尽量少用D   友元类中的所有成员函数都是友元函数35了使类中的某个成员不能被类的对象通过成员操作符访问,则不能把该成员的访问权限定义为( A )。A.public B. protected C.private D. static36派生类的对象对它的( A )是可以访问的。A公有继承的基类的公有成员 B. 公有继承的基类的保护成员C. 公有继承的基类的私有成员 D. 保护继承的基类的公有成员37多继承派生类构造函数构造对象时,( B)被最先调用。A派生类自己的构造函数 B虚基类的构造函数C非虚基类的构造函数 D派生类中子对象类的构造函数38C+类体系中,不能被派生类继承的有( A )。A.构造函数 (构造函数和析构函数都不可被派生类继承) B.虚函数 C.静态成员函数 D.赋值操作函数39编译时的多态性可以通过使用( C )获得。A虚函数和指针 B重载函数和析构函数 C虚函数和对象 D虚函数和引用40下列描述中,( D )是抽象类的特征。A可以说明虚函数 B可以进行构造函数重载 C可以定义友元函数 D不能说明其对象41、下列变量名中,( )是合法的。A. CHINA B .byte-size C .double D .A+a42 、为了避免嵌套的if-else语句的二义性,C语言规定else总是与( )组成配对关系。A.缩排位置相同的ifB.在其之前未配对的ifC.在其之前未配对的最近的ifD.同一行上的if43、循环语句whlie(int i=0 )i-;的循环次数是( )。 A. 0 B. 1 C. 5 D. 无限44、下列给字符数组进行的初始化中,不正确的是( )。 A. char s1="abcd" B. char s23='x','y','0' C. char s3='a','x','y','0' D. char s46="xyz","mnp"45、设"char *s;",以下正确的表达式是( )。A. s="computer"B. *s="computer"C. *s="computer"D. *s='c'46.( )不是构造函数的特征。A.构造函数的函数名与类名相同B.构造函数可以重载C.构造函数可以设置缺省参数D.构造函数必须指定类型说明47、关于友元函数的描述中,错误的是( )。A. 友元函数不是成员函数 B. 友元函数只能访问类中私有成员C. 友元函数破坏隐藏性,尽量少用D. 友元函数说明在类体内,使用关键字friend48、下面四个选项中,( )是用来声明虚函数的。A. virtual B. public C. include D. using namespace49、使用派生类的主要原因是( )。A. 提高代码的可重用性 B. 提高程序的运行效率C. 加强类的封装性 D. 实现数据的隐藏50、关于常成员的描述中,错误的是( )。A. 常成员包含常数据成员和常成员函数两种B. 常数据成员必须是公有的C. 常数据成员要使用构造函数成员初始化列表进行初始化D. 常对象只能调用它的常成员函数,不能调用其它的成员函数51.C+对C语言作了很多改进,下列描述中()使得C语言发生了质变,从面向过程变成了面向对象。A. 增加了一些新的运算符 B. 允许函数重载,并允许设置缺省参数C. 规定函数说明必须用原型 D. 引进了类和对象的概念52派生类的对象可以访问基类成员中的( )。A. 公有继承的保护成员 B. 保护继承的公有成员C. 公有继承的公有成员 D. 保护继承的保护成员53、下列关于C+函数的叙述中,正确的是( )。 A)每个函数至少要具有一个参数 B)每个函数都必须返回一个值 C)函数在被调用之前必须先声明 D)函数不能自己调用自己54、下列关于类和对象的叙述中,错误的是( )。 A)一个类只能有一个对象 B)对象是类的具体实例 C)类是对某一类对象的抽象 D)类和对象的关系是一种数据类型与变量的关系55、在C+中,用于实现运行时多态性的是( )。 A)内联函数 B)重载函数 C)模板函数 D)虚函数57、对于语句 cout<<x<<endl;错误的是描述是( )。 A)“cout”是一个输出流对象 B)“endl”的作用是输出回车换行 C)“x”是一个变量 D)“<<”称作提取运算符58、有如下类声明,则类MyDERIVED中保护的数据成员和成员函数的个数是( )。 class MyBASE private: int k; public: void set(int n) k=n; int get( )const return k; ; class MyDERIVED: protected MyBASE protected: int j; public: void set(int m, int n) MyBASE:set(m); j=n; int get( ) const return MyBASE:get( )+j; ;A)4 B)3 C)2 D)161、在下列函数原型中,可以作为类AA构造函数的是( )。 A)void AA(int); B)int AA(); C)AA(int)const; D)AA(int);62、下面四个选项中,( )是用来声明虚函数的。 A)virtual B)public C)include D)using namespace63、实现运行时的多态性要使用( )。 A)重载函数 B)构造函数 C)析构函数 D)虚函数64、要实现动态联编,必须通过( )调用虚函数。 A)对象指针 B)成员名限定 C)对象名 D)派生类名65、以下( )成员函数表示纯虚函数。 A)virtual int vf(int); B)void vf(int)=0; C)virtual void vf()=0; D)virtual void vf(int)66、有如下类声明:class XA private: int x; public: XA(int n) x=n; ; class XB: public XA private: int y; public: XB(int a,int b); ; 在构造函数XB的下列定义中,正确的是( )。 A)XB:XB(int a,int b): x(a),y(b) B)XB:XB(int a,int b): XA(a),y(b) C)XB:XB(int a,int b): x(a),XB(b) D)XB:XB(int a,int b): XA(a),XB(b) 68、应在下列程序划线处填入的正确语句是( )。 class Base public: void fun()cout<<"Base:fun"<<endl; ;class Derived:public Base void fun() /显示调用基类的函数fun() cout<<"Derived:fun"<<endl; ; A)fun(); B)Base.fun(); C)Base:fun(); D) Base->fun();三、指出并改正下列程序段中的语法错误。题目答案1.float x=3.26f;int &ref1=x;1.float &refl=x;2.int d1=3, d2=2;int * const dp=&d1;dp=&d2;*dp=5;2.去掉const3. /Nums为已定义的类Nums *fp;fp=new int4;3.int改为Nums4. void func(int first, int 2_secnd);4.void func(int first ,int secnd);数字不能在开头2、指出并改正下列程序段中的语法错误。题目答案1.int x=13;const int &ref=x;ref=10;1.去掉const2.double *fp;fp=new int(3);2.double改成int3. void func( first, int secnd);3.void func(int first,int secnd);4. /Pixel有两个整型成员x和y,其拷/拷贝构造函数定义如下:void Pixel(const Pixle& p);4 Pixel(const Pixle &p);6、程序填空,直接将答案写在空行上五、写出程序的运行结果6. (3分)#include <iostream.h>class Countstatic int count;public:Count()count+;static int Getc()return count;Count()count-;int Count:count=100;int main(void)Count c1,c2;cout<<Count:Getc()<<endl; /执行完里面才执行析构函数Count c3;cout<<Count:Getc()<<endl; /执行虚构函数cout<<Count:Getc()<<endl;return 0;第6题102105102的运行结果:1. (3 分)#include <iostream.h>void main( ) /里面的void有没有一样char string="fortunate "char *p=string; cout<<string<<endl;cout<<*p<<*(p+2)<<*(p+4)<<*(p+6)<<endl;for(int i=1; i<sizeof(string); i+=2)fortunatefruaotntcout<<stringi; a是偶数a是奇数12. (3 分)#include<iostream.h>void main() int a;cout<<"please input a number:"cin>>a;switch(a%2) case 0: cout<<"a是偶数"<<endl; /少了break,程序会自动自行下一个语句default: cout<<"a是奇数"<<endl;a=a/4;cout<<a<<endl; 如果输入数为6,则输出结果是什么? 3.( 3 分)#include <iostream.h>class Countstatic int count;public:Count()count+;static int Getc()return count;Count()count-;int Count:count=10;void main(void)Count c1,c2;cout<<Count:Getc()<<endl;Count c3;cout<<Count:Getc()<<endl;cout<<Count:Getc()<<endl;答案前面提到过类似题目!1213124.( 3 分)#include<iostream.h>class Point int x,y; public: Point(int a=0,int b=0) x=a; y=b; void move(int xoffset,int yoffset) x+=xoffset; y+=yoffset; int getx() return x; int gety() return y;class Rectangle:public Point int length,width; public: Rectangle(int x,int y,int l,int w):Point(x,y) length=l;width=w; int getlength()return length; int getwidth()return width;33,66,4,9;void main() Rectangle r(0,0,4,9);r.move(33,66);cout<<r.getx()<<","<<r.gety()<<","<<r.getlength()<<","<<r.getwidth()<<endl;1. (3 分)#include <iostream.h>void main(void)char str="safety"char *p=str; cout<<str<<endl;cout<<*p<<*(p+2)<<*(p+4)<<endl;for(int i=1; i<sizeof(str)-1; i+=2)cout<<stri; safetysftaey 2. (3分)#include<iostream.h>void main() int a,b;int n=0;for(a=1,b=1;a<=100;a+) if(b>=10) break;if(b%3=1) b+=3;n+;4103continue;cout<<a<<endl;cout<<b<<endl;cout<<n<<endl; 3.( 3 分)#include<iostream.h>class Pixelint x, y;public:static int count;Pixel()count+;Pixel()count-;int Pixel:count =0;int main()Pixel p6;Pixel p1=p2;cout<<Pixel:count <<endl;Pixel p24;cout<<Pixel:count <<endl;cout<<Pixel:count <<endl;61064. (3 分)#include <iostream.h>class Aint a1,a2;public:A(int i,int j)a1=i;a2=j;void printA()cout<<a1<<","<<a2<<endl;class BA a; int b1;public:B(int i,int j,int k); void printB();B:B(int i,int j,int k):a(k,j) b1=i; void B:printB()a.printA();cout<<b1<<endl;int main(void)B bbb(8,2,6);bbb.printB();6,28return 0;1. (3 分)#include <iostream.h>void main(void)char string="successful "char *p=string; cout<<string<<endl;cout<<*p<<*(p+2)<<*(p+4)<<*(p+6)<<endl; for(int i=1; i<sizeof(string); i+=2) cout<<stringi; successfulscesucsfl第1题运行结果:2. (4 分)#include <iostream.h>int main( )int x,y;cout<<"Input x,y:"cin>>x>>y; cout<<"x="<<x<<,<<"y="<<y<<endl;cout<<"x-y="<<x-y<<"n" ;cout<<”x*y=”<<x*y<<endl;return 0;/假定,输入如下两个数据:9 3x=9,y=3x-y=6x*y=27第2题运行结果:3.( 4 分)#include<iostream.h>class Pixelint x, y;public:static int count;Pixel()count+;Pixel()count-;Pixel(const Pixel & obj)x=obj.x; y=obj.y; count+; int Pixel:count =0; int main()Pixel p5;cout<<Pixel:count <<endl;Pixel p1=p1;Pixel p2=p2;cout<<Pixel:count <<endl;Pixel p23;cout<<Pixel:count <<endl;cout<<Pixel:count <<endl;57107 /第3题运行结果:4. (7 分)#include <iostream.h>class A int a;protected: int protect;public: A(int x)a=x;protect=x+5;cout<<"A"<<endl; void show()cout<<a<<" "<<protect<<endl;class Bint b;public: B(int x)b=x;cout<<"B"<<endl;int Getb()return b;class C:public A int c; B obj_b; public: C(int x,int y,int z);ABC1 62,5void show();C:C(int x,int y,int z):A(x),obj_b(y)c=z; cout<<"C"<<endl; void C:show() A:show(); cout<<obj_b.Getb()<<","<<c<<endl;

    注意事项

    本文(c++期末考试复习题-2.doc)为本站会员(叶***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开