




已阅读5页,还剩25页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2010级课程设计报告系 别 : 数学与计算机科学系专 业:信息管理与信息系统专业班 级: 2010级信管班 学 号: 姓 名: 二一一年 十二月数据结构课程设计报告规范要求(按照如下格式完成报告)一课程设计目的1. 训练学生灵活应用所学数据结构知识,独立完成问题分析,结合数据结构理论知识,编写程序求解指定问题。 2. 初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;3. 提高综合运用所学的理论知识和方法独立分析和解决问题的能力;4. 训练用系统的观点和软件开发一般规范进行软件开发,巩固、深化学生的理论知识,提高编程水平,并在此过程中培养他们严谨的科学态度和良好的工作作风。二课程设计任务与要求:任务学生成绩管理 问题描述:已知某学生成绩表中现有N位同学的成绩(要求各人数据不同),如:知识点提示: 在线性表中删除某个指定元素,并在规定位置插入一个新元素,要求操作后的结果按元素(姓名)升序的方式显示出来。学号姓名成绩01101李平7501202王露7001205张强8501118曹雨90 现需要删除已转学的某位同学的成绩,同时添加某位同学的成绩(学号、姓名、成绩自定),插入位置按姓名升序排列。 请根据所学过的线性表知识用C/C+编程实现此操作。程序要求: 1. 现有N位同学的数据要求从数据文件中读入,不用交互方式录入;2. 拟删除同学的姓名及新添加同学的数据采用交互方式输入;3. 删除及插入操作完毕,需将成绩表中的所有记录按姓名升序方式显示出来;4. 将更新后的成绩表保存到另一个数据文件中;5. 可以增加功能:如修改某位同学的成绩。要求:1. 在处理每个题目时,要求从分析题目的需求入手,按设计抽象数据类型、构思算法、通过设计实现抽象数据类型、编制上机程序和上机调试等若干步骤完成题目,最终写出完整的分析报告。前期准备工作完备与否直接影响到后序上机调试工作的效率。在程序设计阶段应尽量利用已有的标准函数,加大代码的重用率。 2. 设计的题目要求达到一定工作量(300行以上代码),并具有一定的深度和难度。3. 程序设计语言推荐使用C/C+,程序书写规范,源程序需加必要的注释;4. 每位同学需提交可独立运行的程序;5. 每位同学需独立提交设计报告书(每人一份),要求编排格式统一、规范、内容充实,不少于10页(代码不算);6. 课程设计实践作为培养学生动手能力的一种手段,单独考核。三课程设计说明书1、需求分析要求用到数据结构课上学到的线性表的知识,所以就要充分而清晰的理解关于线性表的知识。要求实现的基本功能很简单,只有删除和插入,增加功能也不过是加上修改。这些在数据结构课上已经讲过,只要能够理解关于线性表的几个相关的基本算法就可以了。问题是将输入的信息保存入文件和从文件输出。这里基本是自学的内容,而且要考虑到是否要自行选择保存的磁盘。综上,做这个课题,要具备的知识就是线性表的基本算法,文件的保存和读取算法,必要的C或者C+知识(本次我将使用C实现),以及丰富的程序调适经验。2、概要设计 首先由于程序中要有对学生信息的增加和减少,定义一个全局变量n,在此程序的任意的模块中均可以使用。宏定义,用LEN来代替开辟地址空间,定义三个结构体变量,学号num,姓名name,分数marks. 设计实现主要功能的函数有:创建学生信息的子函数creat();排序的子函数print();查找的子函数search();文件保存的子函数wfile();文件读取的子函数frile();插入信息的子函数insert();修改信息的子函数xg();删除转学学生的信息的子函数del();然后在main()函数中使用一个switch()语句实现对各个子函数的调用。为了使用的方便,程序中将设计三种排序的方式,按照学号排序funnum(),按照姓名的首字母排序funname(),按照分数排序funmarks()。 在排序子函数print()中还要用一个switch()语句用于对不同的排序方法的函数的调用.为了直观的看到操作以后的结果,还要有一个输出显示的函数listall()。程序运行中,为了保持屏幕的清楚和美观,时刻进行清屏也是必要的。抽象数据类型线性表的定义如下:ADT List 数据对象:D=ai| ai ElemSet,i=1,2,3,n,n0数据关系:R1=| ai-1,ai D,i=1,2,3,,n基本操作:Insert(&L,i,j)初始条件:线性表L已存在,1in+1。操作结果:在L中第i个位置之前插入新的数据元素j,L的长度加1。 Del(&L,i,j)初始条件:线性表L已存在,1in。操作结果:删除L的第i个数据元素,L的长度减1Xg(&L,i,j)初始条件:线性表L已存在。操作结果:用新的输入数据项j代替原有的指定要修改的数据项i。Search(&L,i,e)初始条件:线性表L已存在。操作结果:查找指定的某元素i,并将值赋给e,用e 输出。3、详细设计1)宏定义,定义全局变量、结构体:#define LEN sizeof(struct student)/*宏定义*/static int n;/*n为静态全局变量,本文件模块中各函数均可使用它*/char numstr100;/*全局变量*/struct student/*定义结构体*/long num;char name10;double marks; stu1000,temp;2)主函数的算法如下:void main()jm:system(cls);dochoice=getchar();getchar();switch(choice)/*switch语句用于循环选择所要的选项*/case 1:creat();goto jm;break;case 2:print();goto jm;break;case 3:search();goto jm;break;case 4:wfile();goto jm;break;case 5:frile();goto jm;break;case 6:insert();goto jm;break;case 7:xg();goto jm;break;case 8:del();goto jm;break;case 0:exit(0); default: /*用户使用错误*/puts(nEnter only selections listed);break;/*结束switch语句*/while(1);/*结束while语句*/*结束main函数*/3)创建学生信息的算法如下:creat(void)/*创建学生成绩信息*/while(ch=Y|ch=y)gets(numstr);/输入学号stun.num=atoi(numstr);gets();/输入姓名gets(numstr);/输入成绩stun+.marks=atof(numstr);ch=getchar();getchar();/*用于输入y或者n*/ 4)排序函数的算法如下:int print(void)/*排序输出*/ch=getchar();/*输入a,b,c的语句*/switch(ch)/*选择排序的方式*/case a:funname();/*调用按姓名查找的函数*/getchar();break;case b: funmarks();/*调用按成绩查找的函数*/getchar();break;case c:funnum();/*调用按学号查找的函数*/getchar();break;funname(void)/*按照姓名排序*/ if(n1)printf(tt该文件为空!n);elsefor(i=0;in;i+)for(j=i+1;j0)temp=stui;stui=stuj;stuj=temp;funmarks(void)/*按照成绩排序*/if(n1)printf(tt该文件为空!n);elsefor(i=0;in;i+)for(j=i+1;jstuj.marks)temp=stui;stui=stuj;stuj=temp;funnum(void)/*按照学号排序*/if(n1)printf(tt该文件为空!n);elsefor(i=0;in;i+)for(j=i+1;jstuj.num)temp=stui;stui=stuj;stuj=temp;5)写入文件的算法如下:wfile(void)/*写入文件*/ FILE *fptr; if(n1) printf(t文件为空,无法写操作!n); else fwrite(stu,sizeof(stu0),n,fptr); fclose(fptr);6)读取文件的算法如下:frile(void)/*读出文件*/FILE *fptr;while(fread(&stui,sizeof(stu0),1,fptr)=1)i+;n=i;fclose(fptr);7)查找的算法如下:search(void)/*查找*/flag=0; for(i=0;in;i+)if(strcmp(numstr,)=0)|atol(numstr)=stui.num)printf(%ld,stui.num);printf(%s ,);printf(%.2f ,stui.marks);flag=1; getchar();return 0;8)插入的算法如下:insert(void)/*插入*/ gets(numstr);stun.num=atoi(numstr);gets();gets(numstr);stun+.marks=atof(numstr); funname(); 9)删除的算法如下:del(void) /*删除*/ printf(tt请输入要删除的学号:n); gets(numstr); for(i=0;in;i+) if(stui.num=atol(numstr) j=i; flag=1;if(flag=1) for(i=j;in;i+) stui=stui+1; n-; 10)修改的算法如下:xg(void)/*修改*/flag=0; char ch; gets(numstr); for(i=0;in;i+) if(stui.num=atol(numstr) j=i; flag=1; if(flag=1) switch(ch) case 1: printf(t请输入修改后的姓名:); gets(); break; case 2: printf(t请输入修改后的成绩: ); gets(numstr); stuj.marks=atof(numstr);break; case 0: return 0; 11)各个模块之间的调用关系如下:主函数创建信息浏览信息写入文件读取文件修改信息删除信息插入信息查找信息 按姓名排序按学号排序按成绩排序输出显示信息求平均分数按姓名排序按姓名排序按姓名排序4、设计与调试分析从上面的算法和调用关系可以看出,这个程序的基本样子已经非常的清楚,但是真正的程序中还要考虑各种限制条件。例如在查找的过程中,可能不存在要查找的信息,就要给出不存在此信息的提示等。还有就是涉及到返回值得问题和程序中所要用到的变量的问题。在调试的过程中所遇到的问题很多,其中最难的两个问题是给出的六个警告错误,在5.0的版本下就是两个使得程序无法运行的错误。其中五个是因为在变量的声明中因为使用了浮点型和双精度型两种而造成在某些模块中两个变量相互赋值时类型不匹配。另一个是在查找的子函数中忘记了需要的返回语句,return 1.5、用户手册1)本程序可以在vc+5.0和vc+6.0 的环境下运行。2)在vc中创建一个工程,将源程序复制到.cpp中,编译链接就可以。3)选择编译、运行以后会出现运行界面,选择相应的选项,根据提示即可进行演示。界面如下:4)创建信息就是把最开始要输入的信息输入到系统里。5)浏览信息就是按照要求的顺序浏览已经输入的信息。6)保存信息就是把输入的信息保存如指定的磁盘。7)打开文件就是把保存的信息从磁盘读取保存的信息。8)插入,修改,删除分别是对指定的某信息进行相应的操作。6、测试成果保存完毕,关机以后下次重新启动此程序的情况:因为没有打开文件操作,所以在浏览的时候提示为空文件。当操作5打开文件以后,再次浏览的时候就可以浏览到在文件D:data,txt中保存的文件内容。7、附录(源程序清单)/*计算机051班 XXX的课程设计题目,选题是:学生成绩管理系统*/#include stdio.h/*头文件*/#include string.h#include stdlib.h#define LEN sizeof(struct student)/*宏定义*/static int n;/*n为静态全局变量,本文件模块中各函数均可使用它*/char numstr100;/*全局变量*/struct student/*定义结构体*/long num;char name10;double marks; stu1000,temp;creat(void)/*创建学生成绩信息*/char ch=y;while(ch=Y|ch=y)printf(tt请输入学号:);gets(numstr);stun.num=atoi(numstr);printf(tt请输入姓名:);gets();printf(tt请输入成绩:);gets(numstr);stun+.marks=atof(numstr);printf(tt是否继续添加?(y/n);ch=getchar();/*用于输入y或者n*/getchar(); printf(tt按任意键返回.);getchar();/*按键返回的输入函数*/return 0; int print(void)/*排序*/int funnum(void);/*函数声明*/int funname(void);/*函数声明*/int funmarks(void);/*函数声明*/char ch;printf(ta.按姓名首字母排序 b.按成绩排序 c.按学号排序n);printf(tt请按键选择);ch=getchar();getchar();/*输入a,b,c的语句*/switch(ch)/*选择排序的方式*/case a:funname();/*调用按姓名排序的函数*/printf(t按任意键返回.);getchar();break;case b: funmarks();/*调用按成绩排序的函数*/printf(t按任意键返回.);getchar();break;case c:funnum();/*调用按学号排序的函数*/printf(t按任意键返回.);getchar();break;default:printf(tt对不起选择错误n);printf(t按任意键返回.);getchar();break;return 0;funname(void)/*按照姓名排序*/ int i,j; int listall(void);/*函数声明*/if(n1)printf(tt该文件为空!n);elsefor(i=0;in;i+)/*按照姓名排序的循环语句*/for(j=i+1;j0) /*比较姓名的首字母进行相应交换操作*/temp=stui;stui=stuj;stuj=temp;listall();/*调用listall函数显示排序以后的信息*/return 0;funmarks(void)/*按照成绩排序*/ int i,j; int listall(void);/*函数声明*/if(n1)printf(tt该文件为空!n);elsefor(i=0;in;i+)/*按照成绩进行排序的循环语句*/for(j=i+1;jstuj.marks)/*如果前面的成绩大于后面的就进行交换*/temp=stui;stui=stuj;stuj=temp;listall();/*调用listall函数显示盘许以后的信息*/return 0;funnum(void)/*按照学号排序*/ int i,j; int listall(void);/*函数声明*/if(n1)printf(tt该文件为空!n);elsefor(i=0;in;i+)/*按照学号进行排序的循环语句*/for(j=i+1;jstuj.num)temp=stui;stui=stuj;stuj=temp;listall();/*调用listall函数显示盘许以后的信息*/return 0;double sub(void)/*求总分数的函数*/int i;double sub=0;for(i=0;in;i+)sub+=stui.marks;return sub;/*把学生的分数相加,返回总分数sub*/listall(void)/*输出显示排序的信息*/int j;double mark;if(n0)printf(ntt空文件!);printf(t按任意键返回.);getchar();elseprintf(t学号 姓名 成绩);for(j=0;jn;j+)printf(nt%ldt,stuj.num);printf(t%st,);printf(t%.2f,stuj.marks);mark=sub()/n;/*调用求总分数的子函数,除以学生人数n求出平均分*/printf(nt平均分是:%.2f,mark);printf(n);return 0; wfile(void)/*写入文件*/ FILE *fptr; if(n1) printf(t文件为空,无法写操作!n); printf(t按任意键返回.);getchar();return 0; printf(t请输入要保存的路径及文件名(例如c:stus.txt):); scanf(%s,numstr);getchar();/*输入需要保存的磁盘,可以是c,d,e等任意磁盘*/ if(fptr=fopen(numstr,wb)=NULL) printf(ntt无法打开!%sn,numstr); printf(t按任意键返回.);getchar(); else fwrite(stu,sizeof(stu0),n,fptr);/*把信息写入磁盘的函数*/ fclose(fptr); printf(tt有%d个记录保存成功!n,n); printf(t按任意键返回.);getchar();return 0;frile(void)/*读出文件*/FILE *fptr;int i=0; printf(t请输入要打开的文件(例如c:stus.txt):);scanf(%s,numstr);getchar();if(fptr=fopen(numstr,rb)=NULL)printf(ntt不能打开%s!n,numstr);printf(t按任意键返回.);getchar();elsewhile(fread(&stui,sizeof(stu0),1,fptr)=1)/*从磁盘读取数据的函数*/i+;n=i;printf(tt成功打开%d个记录!n,i);fclose(fptr);printf(t按任意键返回.);getchar();return 0;search(void)/*查找*/ int i,flag=0;printf(t请输入要查询的关键字。例:姓名、学号 n);gets(numstr);for(i=0;in;i+)if(strcmp(numstr,)=0)|atol(numstr)=stui.num)/*把要查找的信息和存储的信息进行比较,如果相同就找到,并输出。用|表示可以有姓名或者学号两种查找方式。*/printf(t学号tt姓名tt成绩n);printf(t%ldtt,stui.num);printf(t%stt,);printf(t%.2fn,stui.marks);flag=1;printf(t按任意键返回.); getchar();return 0;if(flag!=1)/*当计数不为1的时候,查不到所要的信息*/printf(tt不存在这样的信息!n);printf(t按任意键返回.);getchar();return 1;insert(void)/*插入*/ int funnum(void);printf(t请输入学号:);gets(numstr);stun.num=atoi(numstr);printf(t请输入姓名:);gets();printf(t请输入成绩:);gets(numstr);stun+.marks=atof(numstr); funname();/*调用按照姓名排序的函数,显示添加以后所有学生的信息,并且按照姓名排序的方式输出*/ printf(t按任意键返回.); getchar();return 0;del(void) /*删除*/ char ch; int i,j,flag; printf(tt请输入要删除的学号:n); gets(numstr); printf(tt确定?(y/n)n); ch=getchar();getchar(); if(ch=y|ch=Y) for(i=0;in;i+) if(stui.num=atol(numstr)/*比较学号相同时找到相应得信息进行删除*/ j=i; flag=1;if(flag=1) printf(t正在删除,请稍后.n); for(i=j;in;i+) stui=stui+1; printf(tt删除成功!n); n-; funname(); printf(t按任意键返回.);getchar(); return 0; xg(void)/*修改*/ int i,j,flag=0; char ch; printf(t输入您要修改的学号:); gets(numstr); for(i=0;in;i+) if(stui.num=atol(numstr) j=i; flag=1; if(flag=1) printf(t0.退出修改1.姓名2.成绩n); printf(t请输入您要修改的项:n); ch=getchar();getchar(); switch(ch)/*循环语句选择相应的修改选项*/ case 1: printf(t请输入修改后的姓名:); gets();printf(修改成功n); break; case 2: printf(t请输入修改后的成绩: ); gets(numstr); stuj.marks=atof(numstr);printf(tt修改成功n); break; case 0: return 0; if(flag!=1) printf(t不存在这样的信息.n);printf(t按任意键返回.);getchar(); return 0; void main() char choice;jm:system(cls);printf(n);printf( +学生成绩管理系统+n); printf( +-+n);printf( +(请按相应的数字键选择您所需要的操作)+n);printf( +-+n);printf( + 1.创建信息系统 2.浏览信息 +n);printf( + 3.查找成绩 4.保存入文件 +n);printf( + 5.打开文件 6.插入信息 +n);printf( + 7.修改信息 8.删除信息 +n);printf( + 0.退出系统 +n);printf( +n);dochoice=getchar();getchar();switch(choice)/*switch语句用于循环选择所要的选项*/case 1:creat();goto jm;break;case 2:print();goto jm;break;case 3:search();goto jm;break;case 4:wfile();goto jm;break;case 5:frile();goto jm;break;case 6:insert();goto jm;break;case 7:xg();goto jm;break;case 8:del();goto jm;break;case 0:exit(0); default: /*用户使用错误*/puts(nEnter only selections listed);break;/*结束switch语句*/while(1);/*结束while语句*/*结束main函数*/四心得体会 以前做实验题目的时候总是感觉很难,因为根本就不知道从哪里开始。这次课程设计让我对编程有了新的认识。拿到题目的时候也是很困惑,后来看了很多有关的例子,仔细看了书上的线性表部分的知识,觉得就是上课讲到的一些内容,不题目难,是自己先把自己吓住了。后来,参照书上的和网上的诸多例子,一个模块一个模块的编写,调试,一个功能一个功能去完善。发现越做越顺利,由于以前的实验中对于改错的经验积累和几个学得不错的同学的帮助,我的程序中的错误也一个一个的顺利解决。再后来,等我的程序完全做好以后,我竟然可以独立的帮同学修改一些以前根本不知所以然的错误,同学也竟然佩服的称我为“高手”,都找我帮忙,其实,从这次实验中我认识到,我距离高手还很远,编程有很多的乐趣也有很多的技巧性和知识性。我将在以后的日子里继续认真的学习知识,积累经验,让自己的编程能力提高。数据结构课程设计成绩评定表姓 名学 号专业名称班 级课程设计题目小组成员指导教师评语成 绩 评 定(五级制)平时成绩报告成绩实验成绩总评成绩指导教师签名职 称填表日期: 年 月 日袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 户外早教活动策划方案
- 关于智能开关的营销方案
- 海底捞店面营销方案设计
- 青海规划馆设计施工方案
- 徐州胶粘石施工方案审批
- 心理健康咨询方案
- 商城代金券营销方案策划
- 船营区装修方案咨询
- 建筑穿墙螺杆处理方案设计
- 余姚社团活动策划方案
- 国家职业标准 6-11-01-03 化工总控工S (2025年版)
- 《肾淋巴瘤》课件:肾脏淋巴瘤的病理与治疗
- 电子病历标准化-全面剖析
- 2024心理咨询师考试心理危机干预知识与试题及答案
- 公共安全视频监控建设联网应用(雪亮工程)运维服务方案纯方案
- 应用PDCA降低抗生素的使用率及使用强度
- 2025年上海市闵行区区管国企招聘笔试参考题库含答案解析
- 海绵城市施工方案
- T-SAASS 164-2024 盐碱地蛇床绿色轻简化种植技术规程
- 二级WPS Office高级应用与设计计算机等级考试试题及答案指导(2025年)
- 智能计算系统:从深度学习到大模型 第2版课件 第四章-编程框架使用
评论
0/150
提交评论