中央电大数据结构形成性考核册实验报告

上传人:栀**** 文档编号:71141166 上传时间:2022-04-06 格式:DOC 页数:31 大小:670.50KB
收藏 版权申诉 举报 下载
中央电大数据结构形成性考核册实验报告_第1页
第1页 / 共31页
中央电大数据结构形成性考核册实验报告_第2页
第2页 / 共31页
中央电大数据结构形成性考核册实验报告_第3页
第3页 / 共31页
资源描述:

《中央电大数据结构形成性考核册实验报告》由会员分享,可在线阅读,更多相关《中央电大数据结构形成性考核册实验报告(31页珍藏版)》请在装配图网上搜索。

1、.中央电大本科数据结构形成性考核册实验报告实验名称:实验一线性表线性表的链式存储结构【问题描述 】某项比赛中,评委们给某参赛者的评分信息存储在一个带头结点的单向链表中,编写程序:(1)显示在评分中给出最高分和最低分的评委的有关信息(姓名、年龄、所给分数等)。(2)在链表中删除一个最高分和一个最低分的结点。(3)计算该参赛者去掉一个最高分和一个最低分后的平均成绩。【基本要求 】(1)建立一个评委打分的单向链表;(2)显示删除相关结点后的链表信息。(3)显示要求的结果。【实验步骤 】(1)运行 PC中的 Microsoft Visual C+ 6.0程序,(2)点击“文件”“新建”对话窗口中“文件

2、”“ c+ Source File ” 在“文件名”中输入“X1.cpp ” 在“位置”中选择储存路径为“桌面”“确定”,( 3) 输入程序代码,程序代码如下 :#include #include #include #include #include #define NULL 0#define PWRS 5 /定义评委人数struct pw /定义评委信息 char name6; float score;int age;typedef struct pw PW;struct node /定义链表结点struct pw data;struct node * next;typedef struct

3、 node NODE;NODE *create(int m); /创建单链表int calc(NODE *h); /计算、数据处理.下载可编辑 .void print(NODE *h); /输出所有评委打分数据void input(NODE *s);/输入评委打分数据void output(NODE *s);/输出评委打分数据void main()NODE *head;float ave=0;float sum=0;head=create(PWRS);printf(所有评委打分信息如下:n);print(head);/显示当前评委打分calc(head);/计算成绩printf(该选手去掉1最

4、高分和 1最低分后的有效评委成绩:n);print(head);/显示去掉极限分后的评委打分void input(NODE *s)printf(请输入评委的姓名: );scanf(%S,&s-data.name);printf(年龄 : );scanf(%d,&s-data.age);printf(打分 : );scanf(%f,&s-data.score);printf(n);void output(NODE *s)printf(评委姓名 : %8s ,年龄 : %d, 打分 : %2.2fn,s-data.name,s-data.age,s-data.score);NODE *create

5、(int m)NODE *head,*p,*q;int i;p=(NODE*)malloc(sizeof(NODE);head=p;q=p;p-next=NULL;for(i=1;inext=NULL;q-next=p;q=p;.下载可编辑 .return (head);void print(NODE *h) for(int i=1;(inext!=NULL);i+) h=h-next;output(h); printf(n);int calc(NODE *h)NODE *q,*p,*pmin,*pmax;float sum=0;float ave=0;p=h-next;/指向首元结点pmin

6、=pmax=p; /设置初始值sum+=p-data.score;p=p-next;for(;p!=NULL;p=p-next)if(p-data.scorepmax-data.score) pmax=p;if(p-data.scoredata.score) pmin=p;sum+=p-data.score;cout给 出 最 高 分 的 评 委 姓 名 : data.name年 龄:data.age分 值 :data.scoreendl;cout给 出 最 低 分 的 评 委 姓 名 : data.name年 龄:data.age分 值 :data.scoredata.score;sum-=

7、pmax-data.score;for (q=h,p=h-next;p!=NULL;q=p,p=p-next)if(p=pmin)q-next=p-next; p=q;/删除最低分结点if(p=pmax) q-next=p-next; p=q;/删除最高分结点ave=sum/(PWRS-2);cout该选手的最后得分是:aveendl;return 1;程序运行结果如下:.下载可编辑 .线性表的顺序存储结构【问题描述】用顺序表A 记录学生的信息,编写程序:(1)将 A 表分解成两个顺序表B 和 C,使 C 表中含原A 表中性别为男性的学生,B 表中含原表中性别为女性的学生,要求学生的次序与原A

8、 表中相同。(2)分别求男生和女生的平均年龄【基本要求】( 1) 建立学生信息的顺序表 A。( 2) 显示 B 表和 C 表中的相关信息。( 3) 显示计算结果。【实验步骤 ; 】(1)运行 PC中的 Microsoft Visual C+ 6.0程序,( 2)点击“文件” “新建” 对话窗口中 “文件” “c+ Source File ” 在“文件名” 中输入“ X1.cpp ”在“位置”中选择储存路径为“桌面”“确定”,(3) 输入程序代码,程序代码如下:#include #include #include #include #include #include /包含库函数strcpy的头

9、文件.下载可编辑 .#define NULL 0struct student /定义学生信息 char name8;int sex;/0女 : 1:男int age;typedef struct student STD;int create(STD *m); /创建顺序表int calc(STD *m,STD *n,STD *r,float &Fage,float &Mage); /计算、数据处理void print(STD *m);const int MAX=100; /定义人数void main()STD AMAX;STD BMAX;STD CMAX;float age1=0,age2=0

10、; /age1男 age2女create(A);printf(学生总表A 记录如下 : n);print(A);calc(A,B,C,age1,age2);printf(女生名册B 记录如下 : n);print(B);printf(男生名册C 记录如下 : n);print(C);int create(STD *m)int n;printf (请输入班级总人数:n );scanf (%d,&n);m0.age=n; /置顺序表长度printf(请输入学生信息:n);for(int i=1;i=n;i+)printf(姓名 : );scanf(%s,&mi.name);printf(性别 0女

11、 1男:);scanf(%d,&mi.sex);printf(年龄 : );scanf(%d,&mi.age);printf(n);return 1;.下载可编辑 .int calc(STD *m,STD *n,STD *r,float &Fage,float &Mage) int i,j=1,k=1;n0.age=r0.age=0;for( i=1;i=m0.age;i+) if(mi.sex=0)strcpy(nj.name,mi.name); nj.sex=mi.sex; nj.age=mi.age; n0.age+; Mage+=mi.age;j+;elsestrcpy(rk.name

12、,mi.name);rk.sex=mi.sex; rk.age=mi.age;r0.age+;Fage+=mi.age;k+;Mage=Mage/n0.age; Fage=Fage/r0.age;cout 女生的平均年龄是: Mage 男生的平均年龄是: Fageendl; return 1;void print(STD *m)for(int i=1;inext=q-next;q-next=p;尾插法: 指针变量 q始终指向尾结点, p 指针开辟单元, 生成结点:q-next=p; q=p; ?插入: p 所指向结点的后面插入新结点s所指结点s-next=p-next; p-next=s; ?

13、删除: p, q 指向相邻结点,q 所指结点是p所指结点的后继,删除q所指结点,p-next=q-next; ?遍历: p=p-next;.下载可编辑 .实验名称:实验二栈、列队、递归程序设计2.1栈和队列的基本操作【问题描述 】编写一个算法,输出指定栈中的栈底元素,并使得原栈中的元素倒置。【基本要求 】( 1)正确理解栈的先进后出的操作特点, 建立初始栈,通过相关操作显示栈底元素。( 2)程序中要体现出建栈过程和取出栈底元素后恢复栈的入栈过程,按堆栈的操作规则打印结果栈中的元素。【实验步骤 ; 】(4)运行 PC中的 Microsoft Visual C+ 6.0程序,(5)点击“文件”“新

14、建”对话窗口中“文件”“ c+ Source File” 在“文件名”中输入“X1.cpp ” 在“位置”中选择储存路径为“桌面”“确定”,( 6) 输入程序代码,程序代码如下 :#include #include #define MaxSize 100typedef char ElemType;typedef structElemType dataMaxSize;int top;/ 栈顶指针 SeqStack;/定义栈typedef structElemType elemMaxSize;int front,rear;/ 队首和队尾指针 SqQueue;/定义队列/-初始栈函数void Ini

15、tStack(SeqStack *&s)s=(SeqStack *)malloc(sizeof(SeqStack);s-top=-1;/-进栈函数int Push(SeqStack *&s,ElemType e)if (s-top=MaxSize-1).下载可编辑 .return 0;s-top+;s-datas-top=e;return 1;/-显示栈函数void DispStack(SeqStack *s)int i;for (i=s-top;i=0;i-)printf(%c ,s-datai);printf(n);/-显示栈底元素void DispBottomStack(SeqStack

16、 *s)printf(%c ,s-data0);/先进后出 , 栈底元素为第一个元素, 即 data0printf(n);/-判空栈函数int StackEmpty(SeqStack *s)return(s-top=-1);/-出栈函数int Pop(SeqStack *&s,ElemType &e)if (s-top=-1)return 0;e=s-datas-top;s-top-;return 1;/-初始队列函数void InitQueue(SqQueue *&q)q=(SqQueue *)malloc (sizeof(SqQueue);q-front=q-rear=0;.下载可编辑 .

17、/-入队列函数int InQueue(SqQueue *&q,ElemType e)if (q-rear+1)%MaxSize=q-front) /队满return 0;q-rear=(q-rear+1)%MaxSize;q-elemq-rear=e;return 1;/-出队列函数int OutQueue(SqQueue *&q,ElemType &e)if (q-front=q-rear) /队空return 0;q-front=(q-front+1)%MaxSize;e=q-elemq-front;return 1;/-判空队列函数int QueueEmpty(SqQueue *q)re

18、turn(q-front=q-rear);/-主程序void main()ElemType e;SeqStack *s;printf(1)初始化栈sn);InitStack(s);printf(2)栈为 %sn,(StackEmpty(s)?空 : 非空 );printf(3)依次进栈元素a,b,c,d,en);Push(s,a);/入栈元素1Push(s,b);/入栈元素2Push(s,c);/入栈元素3Push(s,d);/入栈元素4.下载可编辑 .Push(s,e);/入栈元素5printf(4)栈为 %sn,(StackEmpty(s)?空 : 非空 );printf(5)从栈顶到栈底

19、元素:);DispStack(s);printf(6)栈底元素为 :);DispBottomStack(s);printf(7)出栈 / 入队列序列 :);SqQueue *q;InitQueue(q);while (!StackEmpty(s)Pop(s,e);/出栈printf(%c ,e);InQueue(q,e);/入队printf(n);printf(8)栈为 %s,(StackEmpty(s)?空: 非空 );printf(队列为 %sn,(QueueEmpty(q)?空: 非空 );printf(9)出队列 / 入栈序列 :);while (!QueueEmpty(q)OutQu

20、eue(q,e);/ 出队Push(s,e);/ 入栈 printf(%c ,e);printf(n);printf(10)栈为 %s,(StackEmpty(s)?空 : 非空 );printf(队列为 %sn,(QueueEmpty(q)?空: 非空 );free(q);/释放队列printf(11)从栈顶到栈底元素:);DispStack(s);free(s);/释放栈程序运行结果如下:.下载可编辑 .2.2 递归程序设计【问题描述 】给定一个 5 位的十进制正整数,用递归法分别编制程序:( 1) 要求从低位到高位逐次输出各位数字。( 2) 要求从高位到低位逐次输出各位数字。【 基本要求

21、 】( 1) 比较题中两种不同要求的递归程序设计和执行过程差别。( 2) 正确理解递归程序的执行过程。( 3) 显示计算结果。【 实验步骤 】(1)运行 PC中的 Microsoft Visual C+ 6.0程序,点击“文件” “新建” 对话窗口中 “文件”“c+ Source File ” 在“文件名” 中( 2)输入“ X1.cpp ”在“位置”中选择储存路径为“桌面”“确定”,(3)输入程序代码程序代码如下 :#include#includevoid out(int n,int i)/从高位到低位输出函数int x,y;y=int(pow(10,i);if (n!=0)x=n/y;n=

22、n-x*y;printf(%d ,x);else printf(0 );i-;if(i=0) out(n,i);void out1(int m,int j)/从低位到高位输出函数int x,z;if (m!=0)x=int(m/10);z=m-x*10;.下载可编辑 .m=x;printf(%d ,z);else printf(0 );j-;if(j=0) out1(m,j);void main()int m,n,o,x,i,j;printf(输入需要排列的数字:n);scanf(%d,&o);m=n=o;x=n;i=-1;while(x!=0)x=x/10;i+;/求出 i 为十进制正整数位

23、数j=i;printf(n);printf(从高位到低位逐次输出各位数字:);out(n,i);printf(n);printf(从低位到高位逐次输出各位数字:);out1(m,j);printf(n);程序运行结果如下:.下载可编辑 .实验结论 :栈和队列是运算受限制的线性表栈:后进先出( LIFO)例: 进栈 b, c, d, e, f出栈可能为f, e, d, c, b; b, c, d, e, f ; c, b, e, d, f ?但不可能是 e, d, f, b, c队列:先进先出( FIFO)例:入队 1,2,3,4,5出队 1,2,3,4,5.下载可编辑 .实验名称:实验三二叉树

24、3.1二叉树的顺序存储结构和链式存储结构【问题描述 】设一棵完全二叉树用顺序存储方法存储于数组tree中,编写程序:( 1) 根据数组 tree ,建立与该二叉树对应的链式存储结构。( 2) 对该二叉树采用中序遍历法显示遍历结果。【基本要求 】( 1) 在主函数中,通过键盘输入建立设定的完全二叉树的顺序存储结构。( 2) 设计子函数,其功能为将顺序结构的二叉树转化为链式结构。( 3) 设计子函数,其功能为对给定二叉树进行中序遍历,显示遍历结果。( 4) 通过实例判断算法和相应程序的正确性。【实验步骤 】(7)运行 PC中的 Microsoft Visual C+ 6.0程序,(8)点击“文件”

25、“新建”对话窗口中“文件”“ c+ Source File ” 在“文件名”中输入“X1.cpp ” 在“位置”中选择储存路径为“桌面”“确定”,( 9) 输入程序代码,程序代码如下 : #include #include #include #include #include#define MaxSize 10typedef struct nodechar data;struct node *left,*right;NODE;void Creab(char *tree,int n,int i,NODE *p);void Inorder(NODE *p);void main()NODE *p;c

26、har treeMaxSize;int n=1;int i=1;printf(请输入完全二叉数的节点值(连续输入字符,以回车结束输入。):);while(treen = getchar( ) != n) n+;treen =n;p=NULL;.下载可编辑 .Creab(tree,n,i,p);Inorder(p);void Creab(char *tree,int n,int i,NODE *p)if(i=n) p=NULL;elsep=(NODE *)malloc(sizeof(NODE);p-data=treei;printf(%c ,p-data );Creab(tree,n,2*i,p

27、-left);Creab(tree,n,2*i+1,p-right);/* 中序遍历树 */void Inorder(NODE *p)if(p!=NULL) Inorder(p-left);printf(%c ,p-data);Inorder(p-right);程序运行结果如下:3.1二叉树的遍历【问题描述 】设一棵二叉树采用链式方式存储,编写一个前序遍历该二叉树的非递归算法。【基本要求 】( 1) 掌握前序遍历二叉树的步骤,针对任意一棵二叉树能人工完成对二叉树的前序遍历。( 2) 能掌握栈的工作特点,并能正确应用这一特点实现对二叉树的遍历。.下载可编辑 .【实验步骤 】(1)运行 PC中的

28、Microsoft Visual C+ 6.0程序,点击“文件” “新建” 对话窗口中 “文件”“c+ Source File ” 在“文件名” 中( 2)输入“ X1.cpp ”在“位置”中选择储存路径为“桌面”“确定”,(3)输入程序代码程序代码如下 :void FirstOrderAccess1(BTree * header)BTree * stackMAX_NODE;BTree *p;int top;top = 0;p = header;dowhile(p!=NULL)printf(BTree%d = %c“t,p-order,p-data);if(p-rchild!=NULL)sta

29、ck+top = p-rchild;p = p-lchild;if(top!=0)p = stacktop-;while(top0)|(p!=NULL);.下载可编辑 .实验名称:实验四图的存储方式和应用4.1 建立图的邻接矩阵【问题描述 】根据图中顶点和边的信息编制程序建立图的邻接矩阵。【基本要求 】( 4) 程序要有一定的通用性。( 5) 直接根据图中每个结点与其他结点的关联情况输入相关信息,程序能自动形成邻接矩阵【 测试用例 】【 实现提示 】( 1) 对图的顶点编号。( 2)在上图中,以顶点 1 为例,因为顶点 2,3,4 与顶点 1关联,可以输入信息1 2 3 4 ,然后设法求出与顶

30、点 1 关联的结点,从而求得邻接矩阵中相应与顶点1 的矩阵元素。21534实验 图 4-1设计程序代码如下:#include#define MaxVertexNum 5#define MaxEdgeNum 20#define MaxValue 1000typedef int VertexType;typedef VertexType vexlist MaxVertexNum;.下载可编辑 .typedef int adjmatrix MaxVertexNum MaxVertexNum;void Createl(vexlist Gv,adjmatrix GA,int n,int e)int i,

31、j,k,w;printf(输入 %d个顶点数据 n,n);for(i=0;in;i+) scanf(%d,&Gvi);for(i=0;in;i+)for(j=0;jn;j+)if(i=j) GAij=0;else GAij=MaxValue;Printf(“输入一条边的两端点序号i 和 j 及边上的权wn ”) ;printf(输入 %d条无向带权边 n,e);for(k=1;k=e;k+)scanf(%d%d%d,&i,&j,&w);GAij=GAji=w;void main().下载可编辑 .vexlist vl;adjmatrix a;Createl(vl,a,5,8);.下载可编辑 .

32、实验名称:实验五查找5.1折半查找【问题描述 】某班学生成绩信息表中,每个学生的记录已按平均成绩由高到低排好序,后来发现某个学生的成绩没有登记到信息表中,使用折半查找法把该同学的记录插入到信息表中,使信息表中的记录仍按平均成绩有序。【基本信息 】( 6) 建立现有学生信息表,平均成绩已有序。( 7) 输入插入学生的记录信息。( 8) 用折半查找找到插入位置,并插入记录。【 测试数据 】自行设计。【实验提示 】( 10) 用结构数组存储成绩信息表。( 11) 对记录中的平均成绩进行折半查找。5.2二叉排序树的建立【问题描述 】参阅相关资料,阅读建立二叉排序树的程序。【基本要求 】( 1) 掌握建

33、立二叉排序树的原理和方法。( 2) 能跟踪程序人工建立二叉排序树。实验报告内容:实验 5.1折半查找设计程序代码如下:#include#include#define N 5struct studentchar name10;float avg;void insort(struct student s,int n).下载可编辑 .int low,hight,mid,k;char y10;float x;low=1;hight=n;strcpy(y,s0.name );x=s0.avg ;while(lowsmid.avg )hight=mid-1;elselow=mid+1;for(k=0;kl

34、ow-1;k+)strcpy(sk.name,sk+1.name) ;sk.avg =sk+1.avg ;printf(%d,low);strcpy(slow-1.name ,y) ;slow-1.avg =x;void main()Struct student aN=caozh,96,cheng,95,zhao,93,wang,92,chen,91;struct student stuN;int i;for(i=0;iN;i+)stui+1=ai;printf(初始 %d 位同学的信息表n,MAX);printf(排名姓名平均分数 n);for(i=1;i=N;i+)printf(%d: %

35、6s%3.2fn,i,stui.name,stui.avg);printf(n);printf(n);printf(请输入学生的姓名:);scanf(%s,stu0.name );printf(n);printf(请输入平均成绩:);scanf(%f,&stu0.avg );printf(n);.下载可编辑 .insort(stu,N);printf(折半排序后同学的信息表n,MAX);printf(排名姓名平均分数 n);for(i=0;i=N;i+)printf(%d: %6s%3.2fn,i+1,stui.name,stui.avg);printf(n);程序运行结果如下:实验 5.2二

36、叉排序树的建立设计程序代码如下:#include#include#define MAX 5typedef struct Bnodeint key;struct Bnode *left;struct Bnode *right;Bnode;Bnode * btInsert(int x,Bnode *root);void Inorder(Bnode *root);void main()int i;int aMAX=60,40,70,20,80;.下载可编辑 .Bnode * root=NULL;printf(按关键字序列建立二叉排序树n);for(i=0;iMAX;i+)printf(%d ,ai)

37、;printf(n);for(i=0;ikey=x;p-right=p-left=NULL;if(root=NULL)root=p; return p;q=root;while(flag=0)if(q-keyx)if(q-left!=NULL)q=q-left;elseq-left=p;flag=1;elseif(q-right!=NULL)q=q-right;elseq-right=p;flag=1;return root;.下载可编辑 .void Inorder(Bnode *root)if(root!=NULL) Inorder(root-left);printf(%d ,root-ke

38、y);Inorder(root-right);程序运行结果如下:.下载可编辑 .实验名称:实验六排序6.1泡沫法排序的改进算法【问题描述 】某班学生成绩信息表中每个学生的记录包括各门功课的成绩和平均成绩,以及按平均成绩的排名等信息,要求从键盘输入每个学生各门功课的成绩,计算出平均成绩,按平均成绩由高到低对信息的记录重新排序,并定出每位同学的名次,打印排序后的信息表。【基本要求 】( 9) 建立学生成绩信息表,计算平均成绩。( 10) 用泡沫法对平均成绩排序,程序中要求一旦序列被排好序就结束相应排序操作。【 测试数据 】自行设计【实验提示 】( 1) 用结构数组存放学生成绩信息表。( 2) 在某

39、趟泡沫中没有发生元素间的交换则说明已排好序6.2堆排序【问题描述 】阅读筛选和建堆的程序,针对某一个待排序的序列,通过人工跟踪程序的执行,完成排序的全过程【基本要求 】( 1) 掌握建堆、筛选的基本原理和算法步骤。( 2) 写出主函数,试运行堆排序的程序。( 3) 掌握堆排序的算法程序,能针对实例按步骤人工完成建堆和排序的过程。【 测试数据 】自行设计。【实验提示 】(1)筛选是建堆的基本算法。(2)把要排序序列看成一棵完全二叉树,用循环方式从最后一个非叶结(设序号为k)开始,逐次对序号为 k, k-1,的结点,直至根结点调用筛选算法,完成建堆。(3)不断通过堆顶元素与堆中最后一个元素的交换并

40、筛选,完成排序。实验报告内容:实验 6.1冒泡法排序的改进设计程序代码如下:#include#include.下载可编辑 .#define MAX 3struct studentchar name10;float cs;float ms;float es;float avg;void sort(struct student s,int n);void sort(struct student s,int n)struct student temp;int i,j;for(i=1; in; i+)for(j=0; jn-i; j+)if(sj.avgsj+1.avg )temp = sj;sj = sj+1;sj+1 = temp;void main()struct student stuMAX;int i;printf(请输入 %d 位同学的姓名和各科成绩n,MAX);for(i=0;iMAX;i+)printf(请输入第 %d 位学生的姓名: ,i+1);scanf(%s,stui.name);printf(n);printf(语文分数 : );scanf(%f,&stui.cs);printf(n);printf(数学分数 : );scanf(%f,&stui.ms);printf(n);

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

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

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


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