第4章--函数-41--函数的声明与调用课件

上传人:仙*** 文档编号:241612683 上传时间:2024-07-09 格式:PPT 页数:81 大小:852.04KB
返回 下载 相关 举报
第4章--函数-41--函数的声明与调用课件_第1页
第1页 / 共81页
第4章--函数-41--函数的声明与调用课件_第2页
第2页 / 共81页
第4章--函数-41--函数的声明与调用课件_第3页
第3页 / 共81页
点击查看更多>>
资源描述
第4章 函数第4章 函数 函数(函数(FunctionFunction)是功能抽象的模块是功能抽象的模块函数函数参数参数返回值返回值输入流输入流输出流输出流第4章 函数 函数(函数(FunctionFunction)是功能抽象的模块是功能抽象的模块 函数作用函数作用 任务任务划分;代码重用划分;代码重用 函数是函数是C+C+程序的重要组件程序的重要组件 函数定义由两部分组成:函数首部和函数操作描述函数定义由两部分组成:函数首部和函数操作描述 函数调用是通过表达式或语句激活并执行函数代码的过程函数调用是通过表达式或语句激活并执行函数代码的过程 4.1 函数的定义和调用/求圆柱体体积求圆柱体体积#include double volume(double radius,double height)return 3.14*radius*radius*height;void main()double vol,r,h;cin r h;vol=volume(r,h);cout Volume=vol endl;函数定义由两部分组成:函数首部和函数操作描述函数定义由两部分组成:函数首部和函数操作描述 函数调用是通过表达式或语句激活并执行函数代码的过程函数调用是通过表达式或语句激活并执行函数代码的过程 4.1 函数的定义和调用/求圆柱体体积求圆柱体体积#include double volume(double radius,double height)return 3.14*radius*radius*height;void main()double vol,r,h;cin r h;vol=volume(r,h);cout Volume=vol endl;函数定义函数定义 函数定义由两部分组成:函数首部和函数操作描述函数定义由两部分组成:函数首部和函数操作描述 函数调用是通过表达式或语句激活并执行函数代码的过程函数调用是通过表达式或语句激活并执行函数代码的过程 4.1 函数的定义和调用/求圆柱体体积求圆柱体体积#include double volume(double radius,double height)return 3.14*radius*radius*height;void main()double vol,r,h;cin r h;vol=volume(r,h);cout Volume=vol endl;函数调用函数调用函数定义形式函数定义形式 类型类型 函数名函数名(形式参数表形式参数表)语句序列语句序列 4.1.1 函数定义函数定义形式函数定义形式 类型类型 函数名函数名函数名函数名(形式参数表形式参数表)语句序列语句序列 函数头函数头函数接口,包括:函数接口,包括:函数返回值类型函数返回值类型 函数体中由函数体中由 return 语句返回的值的类型。没有语句返回的值的类型。没有 返回值其类型为返回值其类型为void函数名函数名函数名函数名 用户定义标识符用户定义标识符4.1.1 4.1.1 函数定义函数定义函数定义形式函数定义形式 类型类型 函数名函数名(形式参数表形式参数表形式参数表形式参数表)语句序列语句序列 函数头函数头函数接口,包括:函数接口,包括:函数返回值类型函数返回值类型 函数体中由函数体中由 return 语句返回的值的类型。没有语句返回的值的类型。没有 返回值其类型为返回值其类型为void函数名函数名 用户定义标识符用户定义标识符形式参数表形式参数表形式参数表形式参数表 逗号分隔的参数说明表列,缺省形式参数时不逗号分隔的参数说明表列,缺省形式参数时不 能省略圆括号。一般形式为:能省略圆括号。一般形式为:类型类型 参数参数1 ,类型,类型 参数参数2,类型,类型 参数参数n 4.1.1 4.1.1 函数定义函数定义函数定义形式函数定义形式 函数头函数头函数接口函数接口类型类型 函数名函数名(形式参数表形式参数表)语句序列语句序列语句序列语句序列 函数体函数体函数体函数体函数的实现代码。函数的实现代码。4.1.1 4.1.1 函数定义函数定义例例4-1 void printmessage()cout How do you do!endl;4.1.1 4.1.1 函数定义函数定义例例4-1void printmessage()cout How do you do!endl;函数返回值类型函数返回值类型无返回值无返回值4.1.1 4.1.1 函数定义函数定义例例4-1void printmessage()cout How do you do!endl;函数名函数名4.1.1 4.1.1 函数定义函数定义例例4-1void printmessage()cout How do you do!endl;形式参数表形式参数表无参数无参数4.1.1 函数定义例例4-1void printmessage()cout How do you do!y)return x;else return y;4.1.1 函数定义例例4-2double max(double x,double y)if(x y)return x;else return y;函数返回值类型函数返回值类型4.1.1 函数定义例例4-2double max(double x,double y)if(x y)return x;else return y;函数名函数名4.1.1 4.1.1 函数定义函数定义例例4-2double max(double x,double y)if(x y)return x;else return y;形式参数表形式参数表4.1.1 4.1.1 函数定义函数定义例例4-2double max(double x,double y)if(x y)return x;else return y;函数体函数体4.1.1 4.1.1 函数定义函数定义例例4-2double max(double x,double y)if(x y)return x;else return y;返回值返回值return return 语句形式:语句形式:return 表达式表达式 或或return(表达式表达式)作用:作用:返回函数值返回函数值 不再执行后续语句,程序控制返回调用点不再执行后续语句,程序控制返回调用点 一个函数体内可以有多个一个函数体内可以有多个return return 语句语句 表达式表达式 返回值的类型与函数类型不相同时,返回值的类型与函数类型不相同时,自动强制转换成函数的类型自动强制转换成函数的类型4.1.1 4.1.1 函数定义函数定义例例4-2double max(double x,double y)if(x y)return x;else return y;TypeType FunctionName()/statements returnreturn expressionexpression;voidvoid FunctionName()/statements returnreturn;/可省略可省略4.1.1 4.1.1 函数定义函数定义调用形式调用形式 函数名函数名(实际参数表实际参数表)4.1.2 4.1.2 函数调用函数调用调用形式调用形式 函数名函数名函数名函数名(实际参数表实际参数表)函数名函数名函数名函数名 函数的入口地址4.1.2 4.1.2 函数调用函数调用调用形式调用形式 函数名函数名(实际参数表实际参数表实际参数表实际参数表)函数名 函数的入口地址实际参数表实际参数表实际参数表实际参数表 与形式参数必须在个数、类型、位置一一对应4.1.2 4.1.2 函数调用函数调用#includevoid printmessage()cout How do you do!endl;void main()printmessage();例例4-34.1.2 4.1.2 函数调用函数调用#includevoid printmessage()cout How do you do!endl;void main()printmessage();函数调用语句函数调用语句例例4-34.1.2 4.1.2 函数调用函数调用例例4-4#includedouble max(double x,double y)if(x y)return x;else return y;void main()double a,b;cin a b;double m=max(a,b);cout max(m,3.5)endl;4.1.2 4.1.2 函数调用函数调用例例4-4#includedouble max(double x,double y)if(x y)return x;else return y;void main()double a,b;cin a b;double m=max(a,b);cout max(m,3.5)endl;函数调用表达式函数调用表达式4.1.2 4.1.2 函数调用函数调用例例4-4#includedouble max(double x,double y)if(x y)return x;else return y;void main()double a,b;cin a b;double m=max(a,b);cout max(m,a+3.5)endl;cout max(max(a,b)max(a,b),a+3.5a+3.5)endl;实际参数是表达式实际参数是表达式4.1.2 4.1.2 函数调用函数调用 函数原型的作用是告诉编译器有关函数的信息:函数原型的作用是告诉编译器有关函数的信息:函数的名字函数的名字函数返回的数据类型函数返回的数据类型函数要接受的参数个数、参数类型和参数的顺序函数要接受的参数个数、参数类型和参数的顺序 编译器根据函数原型检查函数调用的正确性编译器根据函数原型检查函数调用的正确性 函数原型的形式:函数原型的形式:类型类型 函数名函数名(形式参数表形式参数表);4.1.3 4.1.3 函数原型函数原型 函数原型的作用是告诉编译器有关函数的信息:函数原型的作用是告诉编译器有关函数的信息:函数的名字函数的名字函数返回的数据类型函数返回的数据类型函数要接受的参数个数、参数类型和参数的顺序函数要接受的参数个数、参数类型和参数的顺序 编译器根据函数原型检查函数调用的正确性编译器根据函数原型检查函数调用的正确性 函数原型的形式:函数原型的形式:类型类型 函数名函数名(形式参数表形式参数表);函数原型是函数原型是声明语句声明语句4.1.3 4.1.3 函数原型函数原型#include double max(double,double);/函数原型函数原型void main()double a,b,c,m1,m2;cout a b c;m1=max(a,b);/函数调用函数调用 m2=max(m1,c);cout Maximum=m2 y)return x;else return y;使用函数原型使用函数原型4.1.3 4.1.3 函数原型函数原型#include double max(double,double);/函数原型函数原型void main()double a,b,c,m1,m2;cout a b c;m1=max(a,b);/函数调用函数调用 m2=max(m1,c);cout Maximum=m2 y)return x;else return y;函数原型的参数表函数原型的参数表不需要参数名不需要参数名使用函数原型使用函数原型4.1.3 4.1.3 函数原型函数原型#include double max(double,double);/函数原型函数原型void main()double a,b,c,m1,m2;cout a b c;m1=max(a,b);/函数调用函数调用 m2=max(m1,c);cout Maximum=m2 y)return x;else return y;函数调用出现在定义之前函数调用出现在定义之前函数原型声明是必须的函数原型声明是必须的使用函数原型使用函数原型4.1.3 4.1.3 函数原型函数原型函数定义在调用之前函数定义在调用之前#include double max(double x,double y)/函数定义函数定义 if(x y)return x;else return y;void main()double a,b,c,m1,m2;cout a b c;m1=max(a,b);/函数调用函数调用 m2=max(m1,c);cout Maximum=m2 endl;4.1.3 4.1.3 函数原型函数原型函数定义在调用之前函数定义在调用之前#include double max(double x,double y)/函数定义函数定义 if(x y)return x;else return y;void main()double a,b,c,m1,m2;cout a b c;m1=max(a,b);/函数调用函数调用 m2=max(m1,c);cout Maximum=m2 endl;函数定义出现在调用之前函数定义出现在调用之前不需作函数原型声明不需作函数原型声明4.1.3 4.1.3 函数原型函数原型函数原型函数原型说明说明int abs(int n);n的绝对值的绝对值double cos(double x);x(弧度)的余弦(弧度)的余弦double exp(double x);指数函数指数函数exdouble fabs(double x);x的绝对值的绝对值double fmod(double x,double y);x/y的浮点余数的浮点余数double log(double x);x的自然对数(以的自然对数(以e为底)为底)double log10(double x);x的对数(以的对数(以10为底)为底)double pow(double x,double y);x的的y次方(次方(xy)double sin(double x);x(弧度)的正弦(弧度)的正弦double sqrt(double x);x的平方根的平方根double tan(double x);x(弧度)的正切(弧度)的正切 math.h中几个常用的数学函数中几个常用的数学函数 4.1.3 4.1.3 函数原型函数原型/例例4-5 用库函数求正弦和余弦值用库函数求正弦和余弦值#include#include void main()double pi=3.1415926535;double x,y;x=pi/2;y=sin(x);cout sin(x )=y endl;y=cos(x);cout cos(x )=y endl;4.1.3 4.1.3 函数原型函数原型/例例4-5 用库函数求正弦和余弦值用库函数求正弦和余弦值#include#include void main()double pi=3.1415926535;double x,y;x=pi/2;y=sin(x);cout sin(x )=y endl;y=cos(x);cout cos(x )=y endl;包含头文件包含头文件4.1.3 4.1.3 函数原型函数原型/例例4-5 用库函数求正弦和余弦值用库函数求正弦和余弦值#include#include void main()double pi=3.1415926535;double x,y;x=pi/2;y=sin(x);cout sin(x )=y endl;y=cos(x);cout cos(x )=y endl;调用库函数调用库函数4.1.3 4.1.3 函数原型函数原型4.1.4 4.1.4 内联函数内联函数 内联函数是内联函数是C+C+降低小程序调用开销的一种机制降低小程序调用开销的一种机制编译时将所调用的函数的代码直接嵌入到调用函数的调用处编译时将所调用的函数的代码直接嵌入到调用函数的调用处,没有没有函数调用的开销。函数调用的开销。内联函数的作用内联函数的作用 减少频繁调用小子程序运行的时间开销减少频繁调用小子程序运行的时间开销内联函数机制内联函数机制 编译器在编译时,将内联函数的调用以相应代码代替编译器在编译时,将内联函数的调用以相应代码代替内联函数声明内联函数声明inline 函数名函数名注:注:内联函数仅在函数原型或定义时作一次声明。内联函数仅在函数原型或定义时作一次声明。适用于只有适用于只有1 5行的小函数行的小函数 不能含有复杂结构控制语句不能含有复杂结构控制语句,不能递归调用,不能递归调用4.1.4 内联函数内联函数例:例:inline int smallf();main()a=smallf();.int smallf().inline int smallf().main()a=smallf().4.1.4 内联函数内联函数错误说明:错误说明:inline int smallf();main()a=smallf();.inline int smallf().重复说明,语法错误4.1.4 内联函数内联函数错误说明:错误说明:inline int smallf();main()a=smallf();.inline int smallf().int smallf();main()a=smallf();.inlineinline int smallf().作普通函数处理作普通函数处理4.1.4 内联函数内联函数/例例4-6 内联函数示例内联函数示例#include inline double volume(double,double );/函数原型函数原型void main()double vol,r,h;cin r h;vol=volume(r,h);cout Volume=vol endl;double volume(double radius,double height)return 3.14*radius*radius*height;编译器变换为:编译器变换为:vol=3.14*r*r*h;vol=3.14*r*r*h;4.1.4 内联函数内联函数C+有三种参数传递机制:有三种参数传递机制:值传递值传递指针传递指针传递引用传递引用传递 4.2 4.2 函数参数的传递函数参数的传递 调用函数时,实参表达式的值被复制到相应形参标识的对象中,调用函数时,实参表达式的值被复制到相应形参标识的对象中,并按形参类型强制转换并按形参类型强制转换 函数内对形参的访问、修改,都在形参的标识对象进行函数内对形参的访问、修改,都在形参的标识对象进行 函数返回时,形参对象被撤消,不影响实参的值函数返回时,形参对象被撤消,不影响实参的值 值传送的实参可以是常量、有确定值的变量或表达式值传送的实参可以是常量、有确定值的变量或表达式 函数返回值通过匿名对象传递函数返回值通过匿名对象传递 4.2.1 4.2.1 传值参数传值参数1 1 1 1值传递机制值传递机制值传递机制值传递机制 /例例4-7 强制类型转换强制类型转换#include void main()float add1(float,float);/函数原型函数原型 float add2(int,int);/函数原型函数原型 float a,b,c;cin a b;c=add1(a,b);cout c1=c endl;c=add2(1/a,1/b);cout c2=c endl;float add1(float x,float y)return(x+y);float add2(int i,int j)return(i+j);4.2.1 4.2.1 传值参数传值参数/例例4-7 强制类型转换强制类型转换#include void main()float add1(float,float);/函数原函数原型型 float add2(int,int);/函数原型函数原型 float a,b,c;cin a b;c=add1(a,b);cout c1=c endl;c=add2(1/a,1/b);cout c2=c endl;float add1(float x,float y)return(x+y);float add2(int i,int j)return(i+j);类型强制转换类型强制转换截取整数部分传送给形参截取整数部分传送给形参1 1 1 1值传递机制值传递机制值传递机制值传递机制 4.2.1 4.2.1 传值参数传值参数#includeint add(int,int);void main()int a,b,c;cin a b;c=add(a,b);cout c=c endl;int add(int i,int j)i+;j+;return(i+j);abc int a,b,c;/例例4-8 值参传递值参传递1 1 1 1值传递机制值传递机制值传递机制值传递机制 4.2.1 4.2.1 传值参数传值参数#includeint add(int,int);void main()int a,b,c;cin a b;c=add(a,b);cout c=c a b;/例例4-8 值参传递值参传递1 1 1 1值传递机制值传递机制值传递机制值传递机制 4.2.1 4.2.1 传值参数传值参数#includeint add(int,int);void main()int a,b,c;cin a b;c=add(a,b);cout c=c endl;int add(int i,int j)i+;j+;return(i+j);abc24 c=add(a,b);/例例4-8 值参传递值参传递1 1 1 1值传递机制值传递机制值传递机制值传递机制 4.2.1 4.2.1 传值参数传值参数#includeint add(int,int);void main()int a,b,c;cin a b;c=add(a,b);cout c=c endl;int add(int i,int j)i+;j+;return(i+j);abcij2424 int add(int i,int j)/例例4-8 值参传递值参传递1 1 1 1值传递机制值传递机制值传递机制值传递机制 4.2.1 4.2.1 传值参数传值参数24ij#includeint add(int,int);void main()int a,b,c;cin a b;c=add(a,b);cout c=c endl;int add(int i,int j)i+;j+;return(i+j);abc24243 35 5 i+;j+;/例例4-8 值参传递值参传递1 1 1 1值传递机制值传递机制值传递机制值传递机制 4.2.1 4.2.1 传值参数传值参数#includeint add(int,int);void main()int a,b,c;cin a b;c=add(a,b);cout c=c endl;int add(int i,int j)i+;j+;return(i+j);abcij24243 35 5obj return(i+j);/例例4-8 值参传递值参传递3+51 1 1 1值传递机制值传递机制值传递机制值传递机制 4.2.1 4.2.1 传值参数传值参数#includeint add(int,int);void main()int a,b,c;cin a b;c=add(a,b);cout c=c endl;int add(int i,int j)i+;j+;return(i+j);abcij24243 35 5obj8 return(i+j);/例例4-8 值参传递值参传递1 1 1 1值传递机制值传递机制值传递机制值传递机制 4.2.1 4.2.1 传值参数传值参数#includeint add(int,int);void main()int a,b,c;cin a b;c=add(a,b);cout c=c endl;int add(int i,int j)i+;j+;return(i+j);abcij248243 35 5 c=add(a,b);/例例4-8 值参传递值参传递obj81 1 1 1值传递机制值传递机制值传递机制值传递机制 4.2.1 4.2.1 传值参数传值参数#includeint add(int,int);void main()int a,b,c;cin a b;c=add(a,b);cout c=c endl;int add(int i,int j)i+;j+;return(i+j);abc248 c=add(a,b);/例例4-8 值参传递值参传递1 1 1 1值传递机制值传递机制值传递机制值传递机制 4.2.1 4.2.1 传值参数传值参数#includeint add(int,int);void main()int a,b,c;cin a b;c=add(a,b);cout c=c endl;int add(int i,int j)i+;j+;return(i+j);abc248输出c=8 cout c=c endl;/例例4-8 值参传递值参传递1 1 1 1值传递机制值传递机制值传递机制值传递机制 4.2.1 4.2.1 传值参数传值参数2 2 2 2实际参数求值的副作用实际参数求值的副作用实际参数求值的副作用实际参数求值的副作用 C+没有规定在函数调用时实际参数的求值顺序没有规定在函数调用时实际参数的求值顺序 若实际参数表达式之间有求值关联,同一个程序在不同编译器可能若实际参数表达式之间有求值关联,同一个程序在不同编译器可能 产生不同的运行结果产生不同的运行结果2 2 2 2实际参数求值的副作用实际参数求值的副作用实际参数求值的副作用实际参数求值的副作用#include int add(int x,int y)return x+y;void main()int x=4,y=6;int z=add(+x+x,x+yx+y);cout 5+11=z?!n;从右向左计算实参表从右向左计算实参表从右向左计算实参表从右向左计算实参表xyz46xy10 x+yx+y2 2 2 2实际参数求值的副作用实际参数求值的副作用实际参数求值的副作用实际参数求值的副作用 46xyz从右向左计算实参表从右向左计算实参表从右向左计算实参表从右向左计算实参表56xy10+x+x5#include int add(int x,int y)return x+y;void main()int x=4,y=6;int z=add(+x+x,x+yx+y);cout 5+11=z?!n;2 2 2 2实际参数求值的副作用实际参数求值的副作用实际参数求值的副作用实际参数求值的副作用#include int add(int x,int y)return x+y;void main()int x=4,y=6;int z=add(+x+x,x+yx+y);cout 5+11=z?!n;从右向左计算实参表从右向左计算实参表从右向左计算实参表从右向左计算实参表xyz565xy10obj5+102 2 2 2实际参数求值的副作用实际参数求值的副作用实际参数求值的副作用实际参数求值的副作用#include int add(int x,int y)return x+y;void main()int x=4,y=6;int z=add(+x+x,x+yx+y);cout 5+11=z?!n;从右向左计算实参表从右向左计算实参表从右向左计算实参表从右向左计算实参表xyz565xy105+10obj152 2 2 2实际参数求值的副作用实际参数求值的副作用实际参数求值的副作用实际参数求值的副作用#include int add(int x,int y)return x+y;void main()int x=4,y=6;int z=add(+x+x,x+yx+y);cout 5+11=z?!n;从右向左计算实参表从右向左计算实参表从右向左计算实参表从右向左计算实参表xyz565xy101515obj152 2 2 2实际参数求值的副作用实际参数求值的副作用实际参数求值的副作用实际参数求值的副作用#include int add(int x,int y)return x+y;void main()int x=4,y=6;int z=add(+x+x,x+yx+y);cout 5+11=z?!n;1515xyz562 2 2 2实际参数求值的副作用实际参数求值的副作用实际参数求值的副作用实际参数求值的副作用#include int add(int x,int y)return x+y;void main()int x=4,y=6;int z=add(+x+x,x+yx+y);cout 5+11=z?!n;修改程序修改程序修改程序修改程序 +x;+x;int z=add(x x,x+y);cout 5+11=z n;3 3 3 3默认参数默认参数默认参数默认参数 C+允许指定传值参数的默认值。当函数调用中省略默认参数时,允许指定传值参数的默认值。当函数调用中省略默认参数时,默认值自动传递给被调用函数默认值自动传递给被调用函数 默认参数在函数原型定义默认参数在函数原型定义 默认参数放在一般参数之后默认参数放在一般参数之后/例例4-9 使用默认参数使用默认参数#include double power(double real,int n=2 );void main()double r=3.0;cout power(r)endl;cout power(r,3)endl;double power(double real,int n)if (n=0)return 1.0;double result=real;for(int i=2;i=n;i+)result*=real;return result;/例例4-9 使用默认参数使用默认参数#include double power(double real,int n=2int n=2 );void main()double r=3.0;cout power(r)endl;cout power(r,3)endl;double power(double real,int n)if (n=0)return 1.0;double result=real;for(int i=2;i=n;i+)result*=real;return result;定义默认参数定义默认参数/例例4-9 使用默认参数使用默认参数#include double power(double real,int n=2 );void main()double r=3.0;cout power(r)power(r)endl;cout power(r,3)endl;double power(double real,int n)if (n=0)return 1.0;double result=real;for(int i=2;i=n;i+)result*=real;return result;使用默认参数使用默认参数power(r,2)/例例4-9 使用默认参数使用默认参数#include double power(double real,int n=2int n=2 );void main()double r=3.0;cout power(r)endl;cout power(r,3)power(r,3)endl;double power(double real,int n)if (n=0)return 1.0;double result=real;for(int i=2;i=n;i+)result*=real;return result;不使用默认参数不使用默认参数int f()int f();void delay(int k,int time=f()f();OKOK!3 3 3 3默认参数默认参数默认参数默认参数 int f();void delay(int k,int time=f();void ferror1(int x,int y=1int y=1,int z);ErrorError!3 3 3 3默认参数默认参数默认参数默认参数 int f();void delay(int k,int time=f();void ferror1(int x,int y=1int y=1,int z);void ferror2(int x,int y=0);void ferror2(int x);ferror2(3);ferror2(3);/调用哪个函数调用哪个函数?ErrorError!3 3 3 3默认参数默认参数默认参数默认参数 练习定义和调用定义和调用max函数函数,求求3个数中的最大值个数中的最大值.定义和调用定义和调用max函数函数,求求3个数中的最大值个数中的最大值.#include float max(float,float);/函数原型声明函数原型声明void main()float x,y,z,m1,m2;coutxyz;m1=max(x,y);m2=max(m1,z);cout“max=“m2n)return m;else return n;
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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