项目4脉冲计数测量电路_第1页
项目4脉冲计数测量电路_第2页
项目4脉冲计数测量电路_第3页
项目4脉冲计数测量电路_第4页
项目4脉冲计数测量电路_第5页
已阅读5页,还剩77页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、项目4 脉冲计数测量电路学习目标学习目标n通过本项目的学习,能够理解C语言的数据类型、运算符和表达式;n能够掌握C语言的程序控制结构;n能够理解数组、指针的含义并熟练运用它;n熟悉并理解C语言的函数、结构体及共用体的含义。学习要求学习要求n能够理解C语言的数据类型、运算符和表达式n能够掌握C语言的程序控制结构n能够理解数组、指针的含义并熟练运用它n熟悉并理解C语言的函数、结构体及共用体的含义项目导入项目导入n由飞思卡尔MC9S08GB60单片机组成最小应用系统,对外部脉冲信号进行计数测量,通过8个发光二极管(LED)显示,如图4.1所示。项目分析项目分析n1用最少的元器件构成一个单片机的最小应

2、用系统。n2MC9S08GB60单片机中能够应用于计数功能的模块是定时器/脉冲调宽模块,可利用PTD0端口来实现对外部脉冲的测量,即每输入一个外部脉冲,引起外部中断一次,然后将测量的脉冲个数由端口A输出,驱动LED发光二极管显示。n在动手实现利用单片机的最小应用系统计数测量脉冲前,我们首先学习C语言的相关知识。因为单片机的程序编写可以由汇编语言和C语言来实现,汇编语言效率较高但通读性差,C语言可移植性好,可读性也好,随着应用项目的复杂程度越来越大,采用C语言来编写软件程序已成为必然的趋势,因此我们要掌握C语言的基础知识。相关知识相关知识n4.1 C语言的数据类型、运算符和表达式语言的数据类型、

3、运算符和表达式n4.2 算术运算符算术运算符n4.3 C语言的程序控制结构语言的程序控制结构n4.4 C语言的数组和指针语言的数组和指针n4.5 C语言的函数、结构体和共用体语言的函数、结构体和共用体 4.1 C语言的数据类型、运算符和表达式语言的数据类型、运算符和表达式n数据是程序处理的对象,数据类型是数据的内在表现形式。例如,学生的年龄和成绩具有一般数值的特点,在C语言中称为数值型,其中年龄是整数,称为整型;成绩可以为小数,称为实型。而学生的姓名和性别是文字,在C语言中称为字符型数据。C语言具有丰富的数据类型,其中基本的数据类型有整型、单精度实型、双精度实型、字符型。 4.1 C语言的数据

4、类型、运算符和表达式语言的数据类型、运算符和表达式n4.1.1 变量变量n变量是在程序执行过程中其值可以被改变的量。n1.变量命名规则变量命名规则n变量的命名有一定的规则。n(1)由字母、数字和下划线组成;n(2)必须以字母或下划线打头;n(3)字母区分大小写(在系统默认状态下);n(4)前32个字符有效(在系统默认状态下) 4.1 C语言的数据类型、运算符和表达式语言的数据类型、运算符和表达式n3.变量的定义变量的定义n每个变量在使用前都必须先定义其数据类型,定义变量数据类型的语法格式如下:n数据类型符 变量名1,变量名2, n4.变量的存储类型变量的存储类型n当定义某个变量时,C语言的编译

5、系统就要给该变量分配若干个存储单元用来存放该变量的值。而在计算机中寄存器和内存都可以存放数据,内存又可分为临时占用和长期占用。变量的存储类型是指变量在计算机中的存放位置及时间。n定义变量存储类型的语法格式如下:n存储类型符 数据类型符 变量名1,变量名2,;4.1 C语言的数据类型、运算符和表达式语言的数据类型、运算符和表达式n5.变量的初始化变量的初始化n变量的初始化是给变量赋初值的一种方法,是指在变量定义时就给变量赋予初始值。变量初始化的方法很简单,在变量定义的语句中,在变量名后加一个等号和初值即可。n例如:nint x, age=20, score=100;4.1 C语言的数据类型、运算

6、符和表达式语言的数据类型、运算符和表达式n4.1.2 常量常量n常量是在程序运行过程中值不发生改变的数据。例如,圆周率3.1415926就是一个常量。常量也有数据类型,它们是整型常量、实型常量、字符常量、字符串常量及符号常量,整型常量及实型常量的数据长度及取值范围与变量的规定相同。4.1 C语言的数据类型、运算符和表达式语言的数据类型、运算符和表达式n1整型常量整型常量n整型常量用来表示整数,整型数据可以以不同数制形式来表示,不同的进位制有其不同的表示方式, n2实型常量实型常量n实型常量只有十进制数表示方式,它没有单精度和双精度之分。其表示方式有定点数表示和浮点数表示两种。 4.1 C语言的

7、数据类型、运算符和表达式语言的数据类型、运算符和表达式n3字符常量字符常量n字符常量是用两个单引号引住单个字符来表示的。例如:A、*、!等。使用字符常量时应注意以下几点:n(1)空格也是字符,表示为a。n(2)单引号中必须恰好有一个字符,不能空缺。如 是错误的字符常量。4.1 C语言的数据类型、运算符和表达式语言的数据类型、运算符和表达式n4字符串常量字符串常量n字符串是用双引号引住的若干个字符。例如,hello!,485769,a。n字符串可以不含任何字符,称为空串,表示为。n字符串中所含的字符个数称为字符串的长度。例如,abc123,3,的长度分别为6,1,0。 4.1 C语言的数据类型、

8、运算符和表达式语言的数据类型、运算符和表达式n5符号常量符号常量n上面所介绍的常量都是具体数据,在程序中也可以用特定符号来表示某个常量,这个符号被称为符号常量。n符号常量的语法格式如下:n#define 符号常量名 常量4.2 算术运算符算术运算符4.2 算术运算符算术运算符n4.2.1 算术表达式算术表达式n由算术运算符和运算对象连接形成的式子称为算术表达式。n算术运算符的优先级从高到低规定如下:n+ n*/ %n+n位于同一行的运算符的优先级相同。4.2 算术运算符算术运算符n4.2.2 表达式中的类型转换表达式中的类型转换n对数据进行运算时,要求参与运算的对象的数据类型相同(运算得到的运

9、算结果的类型与运算对象也相同)。因此,在运算过程中常常需要对变量或常量的数据类型进行转换,转换的方法有两种,一种是系统自动转换(又称为隐式转换);另一种是在程序中强制转换(又称为显式转换)。4.2 算术运算符算术运算符n1自动转换规则自动转换规则n在不同类型数据的混合运算中,由系统自动实现转换。转换规则如下: n(1)若参与运算的数据的类型不同,则应先转换成同一类型,然后进行运算。n(2)将低类型数据转换成高类型数据后进行运算。如int型和long型运算时,先把int型转换成long型后再进行运算。类型的高低是根据其所占空间的字节数按从小到大的顺序排列的,顺序如下:nchar,int,long

10、,float,double。n(3)所有的浮点运算都是按照双精度进行运算的,即使仅含float型单精度量运算的表达式,也要先转换成double型,再作运算。n(4)char型和short型参与运算时,必须先转换成int型。n例如,设有:nfloat PI=3.14;nint s,r=7;ns=r*r*PI;4.2 算术运算符算术运算符n2. 强制类型转换强制类型转换n强制类型转换是通过类型转换运算来实现的,其语法格式如下:n(类型说明符)(表达式) n其功能是把表达式的运算结果强制转换成类型说明符所表示的类型。例如: (float) a 把a转换为实型;(int)(x+y) 把x+y的结果转换

11、为整型;而(int)x+y 则只将x转换为整型。4.3 C语言的程序控制结构语言的程序控制结构nC语言是结构化程序设计语言,它强调用模块化、积木式来建立程序。采用结构化程序设计方法,可使程序的逻辑结构清晰,层次分明,可读性好,可靠性强,从而提高了程序的开发效率,保证了程序质量,改善了程序的可靠性。n结构化程序是由三种基本结构表示的,即顺序结构、选择结构和循环结构,每种结构仅有一个入口和出口。由这三种基本结构组成的多层嵌套的程序称为结构化程序。4.3 C语言的程序控制结构语言的程序控制结构n4.3.1 C语言的语句语言的语句n程序是下达给计算机的系列指令,这些指令的各种组合可以完成许多有意义的工

12、作。在高级语言中,这些指令是通过语句来实现的。4.3 C语言的程序控制结构语言的程序控制结构n1. 表达式语句表达式语句n 在C语言中,最常见的是表达式语句,它的格式如下:n 表达式;nC语言中允许的各种表达式后面加分号(;)组成表达式语句。分号作为语句的结束符。n例如:na=1; /* 赋值表达式 */n+i; /* 自增表达式 */nx=0,y=1; /* 逗号表达式 */4.3 C语言的程序控制结构语言的程序控制结构n2. 复合语句复合语句n复合语句是由大括号()包围若干条语句组成的。其格式如下:n n 数据说明部分;n 执行语句部分;n 4.3 C语言的程序控制结构语言的程序控制结构n

13、3. 控制语句控制语句nC语言中有9种控制语句:n (1)if else 条件语句n (2)switch 多分支选择开关语句n (3)for 循环语句4.3 C语言的程序控制结构语言的程序控制结构n (4)while 循环语句n (5)do while 循环语句n (6)continue 结束执行循环中下面的语句,判断是否从头循环n (7)break 终止执行循环或语句n (8)goto 转向语句n (9)return 函数返回语句n上述9种语句均完成一定的程序流程控制功能。4.3 C语言的程序控制结构语言的程序控制结构n4.3.2 顺序结构顺序结构n结构化程序的最简单的结构就是顺序结构,所谓

14、顺序结构程序就是按书写顺序执行的语句构成的程序段。4.3 C语言的程序控制结构语言的程序控制结构4.3 C语言的程序控制结构语言的程序控制结构n4.3.3 分支结构分支结构n分支结构也称为选择结构,在许多实际问题的程序设计中,根据输入数据和中间结果的不同情况需要选择不同的语句组执行,在这种情况下,必须根据某个变量或表达式的值作出判断,以决定执行哪些语句和跳过哪些语句不执行。nC语言提供了两种类型的分支结构:n条件分支:根据给定的条件进行判断,决定执行某个分支的程序段。n开关分支:根据给定整型表达式的值进行判断,然后决定执行多路分支中的一支。n条件分支主要用于两个分支的选择,由if 语句和if

15、else 语句来实现,开关分支用于多个分支的选择,由switch 语句来实现。4.3 C语言的程序控制结构语言的程序控制结构n1.if结构结构nif 语句用于实现条件分支结构,它在可选动作中作出选择,执行某个分支的程序段。if 语句有两种格式在使用中供选择。n(1)if格式。格式。nif(表达式) n 语句 n 4.3 C语言的程序控制结构语言的程序控制结构n(2)if else 格式格式 nif(表达式) n语句1 nelsen 语句24.3 C语言的程序控制结构语言的程序控制结构n2.switch 结构结构nswitch结构也称为“多路选择结构”,它在许多不同的语句组之间做出选择。swit

16、ch语句用于实现该结构,它常与break语句联合使用,break语句用于转换程序的流程,在switch语句中使用break语句可以使程序立即退出该结构,转而执行该结构后面的第一条语句。 4.3 C语言的程序控制结构语言的程序控制结构nswitch结构的一般格式如下: nswitch(整型表达式) n n case 整型常量表达式1: n 语句组1 n break; n case 整型常量表达式2: n 语句组2 n break;n n n case 整型常量表达式N: n 语句组N n break;n default : n 语句组N+1n4.3 C语言的程序控制结构语言的程序控制结构4.3

17、C语言的程序控制结构语言的程序控制结构n4.4.4 循环结构循环结构n循环结构是程序中的另一种重要结构,它和顺序结构、选择结构共同作为各种复杂程序的基本构造部件。循环结构的特点是在给定条件成立时,反复执行某个程序段。通常我们称给定条件为循环条件,称反复执行的程序段为循环体。循环体可以是复合语句、单个语句或空语句。在循环体中也可以包含循环语句,实现循环的嵌套。n根据判定循环条件和执行循环体的先后次序,循环结构可以分为以下两种形式:n当型循环: 首先判定循环条件,为真时将执行循环体,进行循环;否则结束循环。n直到型循环:首先执行循环体,再判定循环条件,为真时继续循环;否则结束循环。4.3 C语言的

18、程序控制结构语言的程序控制结构n1当型循环当型循环(前判定循环前判定循环)n用于实现当型循环的C语句有for语句和while语句,它们都能实现结构化程序设计中的循环结构,但也各有特点,使用的场合有所不同。n(1) for语句语句nfor语句的一般格式: n for(表达式;表达式;表达式) 4.3 C语言的程序控制结构语言的程序控制结构4.3 C语言的程序控制结构语言的程序控制结构n(2)while语句语句nwhile循环语句的格式是: n while(表达式) n 循环体 4.3 C语言的程序控制结构语言的程序控制结构n2直到型循环直到型循环(后判定循环后判定循环)n在当型循环中,首先判定循

19、环的条件,若循环的条件不满足,循环体将一次也不执行。直到型循环与当型循环不同,它首先执行一次循环体,然后判定循环条件。在语言中,直到型循环是由do while语句来实现的。4.3 C语言的程序控制结构语言的程序控制结构ndo while语句的格式如下:ndon 循环体nwhile(表达式); 4.3 C语言的程序控制结构语言的程序控制结构n3特殊语句特殊语句n在循环结构中包含几种特殊的语句,分别是break语句、continue语句和goto语句,它们都是用来控制程序的流程转向的。适当地和灵活地使用它们可以更方便或更简洁地进行程序的设计。4.3 C语言的程序控制结构语言的程序控制结构n1bre

20、ak语句语句n在while、for、do while或switch语句结构中循环体或语句组中使用break语句可以使程序立即退出该结构,转而执行该结构下面的第一条语句。break语句也称之为中断语句,它通常用来在适当的时候退出某个循环,或终止某个case并跳出switch结构。对于循环结构中有多个出口的情形,也常使用break语句 4.3 C语言的程序控制结构语言的程序控制结构n常见的形式如下:n while(1)n n n if(表达式1) break;n n if(表达式2) break;n n n if(表达式N) break;n n 4.3 C语言的程序控制结构语言的程序控制结构n2c

21、ontinue语句语句n在while和do while语句的循环体中,执行continue语句将结束本次循环而立即测试循环的条件,以决定是否进行下一次循环。4.3 C语言的程序控制结构语言的程序控制结构n3goto语句与标号语句与标号ngoto语句配合语句标号可以实现无条件转向,进而控制程序流向。语句标号由一个有效标识符(标号名)加冒号(:)组成,放在某个语句之前或单独一行。在同一个函数中的语句标号不能重名,同一条语句可以有几个不同的语句标号。语句标号仅对goto语句有意义,执行goto语句后程序将跳转至标号后边的语句去运行。4.3 C语言的程序控制结构语言的程序控制结构ngoto语句的一般格

22、式如下: n n goto 标号名; n标号名: 语句n 4.4 C语言的数组和指针语言的数组和指针n4.4.1数组数组n数组在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来。这些按序排列的同类数据元素的集合称为数组。在C语言中, 数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数组、字符数组、指针数组、结构数组等各种类别 4.4 C语言的数组和指针语言的数组和指针n1.数组类型说明数组类型说明 n在C语言中使用数组必须先进行类型说明。 数组说明的一般形式为:n 类型说明符 数

23、组名 常量表达式,;n其中,类型说明符是任一种基本数据类型或构造数据类型。 数组名是用户定义的数组标识符。 方括号中的常量表达式表示数据元素的个数,也称为数组的长度。4.4 C语言的数组和指针语言的数组和指针n2.数组元素的表示方法数组元素的表示方法n数组元素是组成数组的基本单元。数组元素也是一种变量,其标识方法为数组名后跟一个下标。 下标表示了元素在数组中的顺序号。数组元素的一般形式为:n数组名下标4.4 C语言的数组和指针语言的数组和指针n4.4.2指针指针n指针是C语言的一个重要概念,也是C的一个重要特色。正因为有了指针,C语言才可以灵活有效的表示复杂的数据结构,更方便地处理诸如内存、字

24、符串、数组、函数等。可以说,不掌握指针就不能掌握C的精华。4.4 C语言的数组和指针语言的数组和指针n1.地址的概念地址的概念n(1)存储器地址)存储器地址n计算机所处理的数据,总是要存储在一定的存储介质上,例如内存。而这些数据的存储,又是有一定先后顺序的。因此我们通常将这些存储介质上的一个个用于存放数据的基本单元进行线性编址,即按照一定的顺序给每个存储单元(字节)一个编号,这个编号就是该单元的地址。一般情况下,地址总是从0开始的一系列整数。某个地址就代表某个存储单元,就如一个房间号码对应于一个实际的房间一样。n(2)存储单元的内容)存储单元的内容n这是不同于地址的另一概念,它是指某地址单元内

25、具体存放的数据,如一个字符、一个整数、实数或一个字符串。4.4 C语言的数组和指针语言的数组和指针n(3)变量的访问)变量的访问 n 一般情况下,程序中的一个变量就对应存储器的若干个单元,对变量的访问可以简单地认为是通过变量名来对内存单元进行存取操作。实际上,程序在编译之后,变量名已经转化为了与该变量对应的存储单元地址,因而对变量的访问就是通过地址对存储单元的访问。4.4 C语言的数组和指针语言的数组和指针n2. 针的概念针的概念n变量的指针即是变量的地址,指针即地址,总是“指向”对应变量的。而指针变量是专门用于存放另一变量的地址(指针)的变量,称为指针变量。即指针变量中存放的是某个变量的指针

26、(地址)。n例如:图4-11中的 p变量是指针变量,指向变量a的地址;而160即是指针,是变量a的地址。4.4 C语言的数组和指针语言的数组和指针n1指针变量的定义指针变量的定义n格式:基类型 *指针变量名n功能:定义一个指向另一个属于“基类型”的指针变量。n 例如:int *i_pointer;/* 定义一个指针变量i _pointer,它指向一个整型变量(即i _pointer中存放的是一个整型变量的地址)*/4.4 C语言的数组和指针语言的数组和指针n2指针变量的初始化指针变量的初始化n 在引用指针变量前,必须对它初始化,否则会得到不可预料的值。因为在初始化之前,该指针变量并未指向任何一

27、个具体的变量。初始化方法如下:n定义时初始化n如:int i,*p=&i; /*定义指针变量p,并将它指向变量i。*/n不在定义时初始化,但必须在使用之前初始化n如:int j=100,k=20,*p1,*p2;n p1=&j;p2=&k;n printf(“%d %d”,*p1,*p2);4.4 C语言的数组和指针语言的数组和指针n3指针变量的引用指针变量的引用n下南通过例子来说明指针变量的引用。n 例:通过指针变量访问整型变量。n main()n int j=100,k=20,*p1,*p2;n p1=&j;p2=&k; /* 将变量j的地址赋给指针

28、变量p1,k的地址赋给p2 */n printf(“%d %d”,*p1,*p2);/*p1,p2为指针,必须通过指针运算符“*”n 间接访问变量j和k。后两句的输出功能一致*/n printf(“%d %d”,j,k);n 4.4 C语言的数组和指针语言的数组和指针n4指针变量作为函数参数指针变量作为函数参数n用指针变量作为函数的参数,其作用是将某个变量的地址传送给另一个函数。指针参数可以作形参也可以作实参。例如:nswap(int *p1, int *p2);4.5 C语言的函数、结构体和共用体 n4.5.1 函数的定义函数的定义n任何函数(包括主函数main())都是由函数说明和函数体两

29、部分组成。根据函数是否需要参数,可将函数分为无参函数和有参函数两种。n(1)无参函数的一般形式n 函数类型 函数名( void )n 说明语句部分;n 可执行语句部分;n 4.5 C语言的函数、结构体和共用体n(2)有参函数的一般形式n函数类型 函数名( 数据类型 参数,数据类型 参数2 )n 说明语句部分;n 可执行语句部分;n 4.5 C语言的函数、结构体和共用体n4.5.2 函数的返回值与函数类型函数的返回值与函数类型n语言的函数兼有其他语言中的函数和过程两种功能,从这个角度看,又可把函数分为有返回值函数和无返回值函数两种。4.5 C语言的函数、结构体和共用体n1函数返回值与函数返回值与

30、return语句语句n有参函数的返回值,是通过函数中的return语句来获得的。nreturn语句的一般格式: nreturn ( 返回值表达式 ); 4.5 C语言的函数、结构体和共用体n2函数类型函数类型n在定义函数时,对函数类型的说明,应与return语句中、返回值表达式的类型一致。如果不一致,则以函数类型为准。如果缺省函数类型,则系统一律按整型处理。4.5 C语言的函数、结构体和共用体n3对被调用函数的说明和函数原型对被调用函数的说明和函数原型n在ANSI C新标准中,采用函数原型方式,对被调用函数进行说明,其一般格式如下:n函数类型 函数名(数据类型 参数名, 数据类型 参数名2);

31、4.5 C语言的函数、结构体和共用体n4.函数的调用函数的调用 n在程序中,是通过对函数的调用来执行函数体的,其过程与其他语言的子程序调用相似。语言中,函数调用的一般形式为: n函数名(实际参数表) 4.5 C语言的函数、结构体和共用体n4.5.3 结构体结构体 n结构体就是一个可以包含不同数据类型的一个结构,它是一种可以自己定义的数据类型,它的特点和数组主要有两点不同,首先,结构体可以在一个结构中声明不同的数据类型,第二,相同结构的结构体变量是可以相互赋值的,而数组是做不到的,因为数组是单一数据类型的数据集合,它本身不是数据类型(而结构体是),数组名称是常量指针,所以不可以做为左值进行运算,

32、所以数组之间就不能通过数组名称相互复制了,即使数据类型和数组大小完全相同。4.5 C语言的函数、结构体和共用体n“结构”是一种构造类型,它是由若干“成员”组成的。 每一个成员可以是一个基本数据类型或者又是一个构造类型。 结构既是一种“构造”而成的数据类型,那么在说明和使用之前必须先定义它,也就是构造它。如同在说明和调用函数之前要先定义函数一样。 4.5 C语言的函数、结构体和共用体n定义一个结构的一般形式为: struct 结构名 n成员表列 ; 成员表由若干个成员组成, 每个成员都是该结构的一个组成部分。对每个成员也必须作类型说明,其形式为:类型说明符 成员名; 成员名的命名应符合标识符的书

33、写规定。 4.5 C语言的函数、结构体和共用体n例如: struct stu int num; char name20; char sex; float score; ; 4.5 C语言的函数、结构体和共用体n1、结构类型变量的说明、结构类型变量的说明n说明结构变量有以下三种方法。以上面定义的stu为例来加以说明。 .先定义结构,再说明结构变量。如: struct stu int num; char name20; char sex; float score; ; struct stu boy1,boy2; 4.5 C语言的函数、结构体和共用体n.直接说明结构变量。例如: struct int

34、 num; char name20; char sex; float score; boy1,boy2; 4.5 C语言的函数、结构体和共用体n2、结构变量的初始化、结构变量的初始化n如果结构变量是全局变量或为静态变量, 则可对它作初始化赋值。对局部或自动结构变量不能作初始化赋值。 4.5 C语言的函数、结构体和共用体n例:外部结构变量初始化。 struct stu /*定义结构*/ int num; char *name; char sex; float score; 4.5 C语言的函数、结构体和共用体n boy2,boy1=102,Zhang ping,M,78.5; main() bo

35、y2=boy1; printf(Number=%dnName=%sn,boy2.num,); printf(Sex=%cnScore=%fn,boy2.sex,boy2.score); struct stu int num; char *name; char sex; float score; boy2,boy1=102,Zhang ping,M,78.5; main() boy2=boy1; 4.5 C语言的函数、结构体和共用体n4.5.4 共用体共用体(联合联合)n 共同体(联合)也是一种构造类型的数据结构。在一个“联合”内可以定义多种不同的数据类型,因为有时我们需要使几种不同类型的变量放到同一内存单元中。允许利用同一存储区域来存储、处理不同类型的数据。使几个不同的变量共占同一段内存的结构,称为“联合”(共同体)类型的结构。4.5 C语

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论