




已阅读5页,还剩54页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕业设计(论文)毕业设计(论文) 题目:题目: 系系 别别 专业名称专业名称 班级学号班级学号 学生姓名学生姓名 指导教师指导教师 二二 oo 年年 月月 - 0 - 目 录 1 绪论 4 1.1 课题来源4 1.2 课题意义4 1.3 课题目的4 1.4 应解决的主要问题及应达到的技术要求.4 1.5 本设计的理论依据5 2 设计简介及设计方案论述6 2.1 设计内容与目标.6 2.2 设计的重点、难点和关键. .6 2.3 整体设计方案.6 3 详细设计9 3.1 重点,难点技术设计与相关解决9 3.2 整体、详细的设计方案9 4 设计结果及分析21 4.1 进入系统分析.21 4.2 系统操作管理分析23 4.3 系统工作流程分析25 4.4 系统整体性能分析31 总 结32 致 谢33 参考文献34 附录 主要程序代码.35 汽车租赁管理系统汽车租赁管理系统 学生姓名:钟斌斌 班级:0982051 指导老师: 摘摘 要要: 在如今数据信息爆炸的 21 世纪,人们会因为要记忆各种各样,种类繁 多的信息而烦恼。在解决这个问题上,使用计算机上的管理系统占有很大的可行性和 优势。任何一个正规机构,都会有自己的信息管理系统,它们分别扮演着不同的角色。 车辆租凭管理系统是社会上许多使用管理系统的一个典型,它主要的任务是管理 汽车租赁公司整个的租车业务。其整个的开发包括后台数据库的维护和开发,还有前 端基本应用程序的编写和开发。前者是汽车租赁管理系统很重要的部分,完整的数据 库系统都不能缺少。但由于现在的学习水平还没有达到这个高度,所以这一部分在车 辆租凭管理系统中暂不详细说明。完成前台程序的开发,可以使用 c,c+,c#,java,vb 等语言都可实现,经过 uml 的分析和思路的整合,考虑到 c+的高效性,最终我选择了 c+作为编程语言,结合链表、文件流读写的知识和查阅相关文献,在学校指导老师的 帮助下,基本完成了设计任务的要求。 基本功能:管理功能、服务功能、查询功能。对于用户来说,可以使用查询功能 查询车辆的基本情况和租凭情况。管理员则可以对此系统进行管理,即对车辆进行添 加、删除、修改信息、租车、还车、对所有车辆信息的查询。 关键字:管理系统;c+;链表;文件流 指导老师签名:指导老师签名: car rental management system student name :zhong binbin class:0982051 abstract: data in the era of information explosion in 21s, the society will due to the memory of various information is somewhat annoyed. to solve this problem, the computer management system has great advantages and feasibility. every formal institutions, have their own information management system, which bears a different task. vehicle lease management system is a social business management system is a typical management company, mainly the car rental business. its development mainly includes the backstage database development and maintenance, and the front-end application program development and programming. the former is a very important part of the system, a complete database system it lacks. but now the learning level and course have not reached this level, so this part of the vehicle lease management system not stated. in this focus on the completion of the program, use c, c+, c#, java, vb and other languages can be realized, after the basic idea of the integration and analysis of uml, whereas the c + + efficiency, i choose the c + + programming language as a linked list, document flow, combining reading and writing knowledge and access related literature, the school instructs under teachers help, basically completed the design requirements of the task. basic functions: management function, service function, query function. for users, can use queries vehicle and the basic situation of lease conditions. the administrator can this management system, whereby the vehicle to add, delete, modify information, car rental, car, on all vehicle information query. key words: management system; c+; list; the file stream signature of supervisor: 1 1 绪论绪论 1.11.1 课题来源课题来源 现代社会,人的大脑开始出现一定的记忆压力,因为太多的事情需要然人来处理并 且记住大量的数据.计算机的出现,让人们找到了减轻压力的途径,这也是社会发展的 必然,人类科技的进步的一个重要标志就是生产力的高效性。计算机与人类相比的优 点就是有着极快的计算速度和准确性,性能稳定,具有很高的可靠性,根据此特点, 计算机管理系统和数据库诞生了,随着社会的发展,它们的地位更是显得尤其重要, 每一个正规的机构都有自己的管理系统,数据库管理系统也是计算机领域的一个重要 研究方向,有着不可估量的发张前景。 1.21.2 课题意义课题意义 计算机管理系统在当今的商业社会有着很强大的功能,这也是这几年来计算机飞速 发展的一个重要原因,计算机没有思考能力,不能像人一样,它的一切活动都是建立 在存储大量数据以及对这些数据进行简单的操作之上的, “人工智能”也不列外,其中 计算机管理系统就是一个很好的运用。一个好的管理系统,能承当一个很庞大的任务, 在公司,在学校,在政府部门,它都有着自己的职能。汽车租凭管理系统,是汽车公 司的重要系统之一,它能管理日常的租凭车辆任务,可靠性高,高效,便捷,节省劳 动力,一次投入多次使用,高质量的租凭管理系统和这家汽车公司的业绩是直接挂钩 的。 1.31.3 课题目的课题目的 通过此课题的学习和设计,让我们懂得如何开发一个管理系统、需要具备的知识、 准备工作和需要考虑的各种问题。当然开发一个汽车租凭管理系统,最直接的目的就 是完成汽车公司的租凭任务,主要负责租凭这一块,其中主要的操作包括借车、登记、 还车、计费、查询和基本车库的管理。 1.41.4 应解决的主要问题及应达到的技术要求应解决的主要问题及应达到的技术要求 1.4.11.4.1 应解决的主要问题应解决的主要问题 在此系统的开发计划中(暂不考虑后台数据库的开发) ,我们应该解决的主要问题 包括: a.在计算机中写一个函数,能完成无限添加车辆和存储租车、还车相关信息的任务; b. 怎样将每次操作的记录进行保存,做到每次输入的信息永久有效; c.怎样做一个人性化的操作界面,既具备视觉美感,操作起来又简便。 1.4.21.4.2 应达到的技术要求应达到的技术要求 1.能在车库中无限添加车辆,删除车辆; 2.能修改车辆信息; 3.能输出车库中所有车的基本信息; 4.租车; 5.还车; 6.按车号和年月查询车辆出租信息; 7.按年月查询车辆出租信息; 8.按车号和年月查询车辆出租费用情况; 9.按年月查询车辆的出租费用情况; 10.保存操作信息; 11导入操作信息; 12.操作简单,界面具有美感; 13.整体性能完整; 具体要达到的功能要求如下图中所示: 图 11 1.51.5 本设计的理论依据本设计的理论依据 计算机有较强的运算能力和存储数据的功能,具有较强的稳定性和可靠性。链表 可以实现无限条记录的保存和查找,可以解决无限添加车辆的问题,而文件的读写能 将每次操作的有效数据在计算机内存和磁盘上进行读写,使得每次进入系统从操作的 数据我们都有记录,并且在下次登入系统的时候读入计算机内存,在系统程序中继续 传递。 2 2 设计简介及设计方案论述设计简介及设计方案论述 2.12.1 设计内容与目标设计内容与目标 设计的内容和主要目标是完成一个具有简单基本功能的汽车租凭管理系统,承当某 汽车公司的汽车租凭任务并对其进行有效的管理。管理系统的特点是:功能基本齐全, 操作简单易懂。最主要的是能完成基本的汽车租凭义务和管理,承担工作人员的大量 繁琐记忆和脑力劳动。 2.22.2 设计的重点、难点和关键设计的重点、难点和关键 此设计的重点是各个功能函数的编码,例如添加车辆、租车、还车、计算费用,各 种方式的查询等,其中这些操作都建立在对车辆记录的保存和查找上,因为进行这些 操作都必先找到相应的记录信息,进行修改,然后再存储起来;设计的难点是无限次 添加记录和保存记录,以及对每次记录的保存入库(在下次运用此程序时上次的操作 信息还在) ,包括信息的存储和读取。说到无限次添加记录,一般用数组是不能办到的, 我们都知道在用数组之前必须先定义大小;关键是把各个函数正确有效地连接起来, 有正确的实参传递,能正确有效地输出预期结果,达到系统管理的目的。这部分说起 来简单,但实际去做,那就是程序中最难的一块,这要考虑到各个函数的关联以及每 个函数完成的特殊功能和对整个信息记录的影响,就如一个机器人,要让他动起来, 得花费大量的功夫来来你接他身体的机械硬件和软件代码 2.32.3 整体设计方案整体设计方案 a读懂系统设计要求,初步了解设计思路; b首先用 uml 图分析,得出整体的设计方案; c依据 uml 图,分个写出每个函数,并留好相应的接口,以便后面每个函数的相互连 接; d写一个整体的系统函数,在其中将所有函数聚合在一起,方便调用,可以用一个类 来完成此任务; e写出界面函数,做到美观,操作简单,人性化; f写出 main 函数,组织调用各个函数和各种类,有效地完成整个函数的功能; g全面而又广泛地测试,发现错误,改进错误,改进程序,提高程序的健壮性。 整体设计方案:定义一个结构体,里面包括车辆的属性和一些标志,如车号,车型, 出租、归还时间,费用,出租状态等,还有一个本身类型的指针,为了构建链表的节 点。然后定义两个时间类 date 和 time,分别用来计算租车、还车的日期差并计算相应 的费用和存储租,归还日期。接下来定义一个类,作为整体调用函数用。完成以后就 开始编写各个功能的函数,添加、删除、查询、保存、导入信息等。最后完成界面输 出函数和 main()函数的定义,界面函数只要做到美观、操作简单就可,主要是 main() 函数,它起到整体运行程序的作用,系统能不能成功运转,就看它的正确性和高效性。 下面分别是节点结构体类的定义: struct vehicle char vid10; char vtype5; double fee1000; int vsign1000; int typesign;/作为出租方式的标志,按小时租用 1 表示,按天租用 2 表示 int sign;/作为是否出租过,租了没还,租了已还的标记,分别用 0,1,2 标志 int k1; int k2 ; /作为 ldate 和 bdate 对想数组的下标 time ldate1000; time bdate1000; vehicle *next; ; 下面分别是 data 类的定义: class date private: int year,month,day; public: date(int y,int m,int d):year(y),month(m),day(d) int count() int counter1=0,m(month-1),d(day); for(;m0;m-) if(m=4|m=6|m=9|m=11) counter1+=30; else if(m=1|m=3|m=5|m=7|m=8|m=10) counter1+=31; else if(m=2) if(year%4=0) counter1+=29; else counter1+=28; else std:couta.year;y-) if(y%4=0) counter+=366; else counter+=365; return counter; 其中 count()函数用来计算某个日期是该年的第几天,distances()用来计算两个日期 的相差天数,从而计算出费用。 下面分别是 data 类的定义: class time private: int year,month,day,hour; public: time(int i=0,int j=0,int k=0,int m=0):year(i),month(j),day(k),hour(m) void time(int yy=0,int mm=0,int dd=0,int hh=0) year=yy; month=mm; day=dd; hour=hh; int ryear()return year; int rmonth()return month; int rday()return day; int rhour()return hour; friend void lead(); ; 3 3 详细设计详细设计 3.13.1 重点,难点技术设计与相关解决重点,难点技术设计与相关解决 3.1.13.1.1 设计重点与解决方案设计重点与解决方案 设计重点:各个功能函数的编码,例如添加车辆、租车、还车、计算费用,各种方 式的查询等。 解决方案:使用数据结构的相关知识,对整体的系统构建一个链表,用来存储每次 向车库里添加的车辆,可以无限添加,这是链表和数组的区别,并在此基础上创建 add(),del(),print(),lend(),back(),v_find(),v_find_all(),v_findfee(), v_find_allfee(),sav(),lead()等函数。 3.1.23.1.2 设计难点与解决方案设计难点与解决方案 设计难点:无限次添加车辆和删除车辆,以及对每次记录的保存和读取。 解决方案:前者使用链表可以解决,但一辆车到底要租到少次,我们不知道,所以 存储每辆车的出租记录也需要创建一个链表,至于信息的存储和导入,我们就用文件 的读写操作来完成,每次操作完成后对数据进行保存,用文件写入磁盘,然后每次打 开系统的时候再将上次的记录导入程序中(计算机内存中) ,进行新的操作,这是文件 的重要操作。 3.23.2 整体、详细的设计方案整体、详细的设计方案 3.2.13.2.1 整体的设计思路整体的设计思路 运用链表知识和文件的读写操作写一个基于命令提示符窗口的汽车租凭管理系统, 先写一个存储车辆所有信息的链表,以便于添加车辆,和进行后续的相关工作,然后 就是将计算机内存中的车辆信息写到硬盘上,再写一个读入函数,再每次登入系统后 将硬盘上的信息读到内存,达到保存操作记录的作用。 3.2.23.2.2 具体步骤具体步骤 1.写一个名为 data 的类,数据成员包括 year,month,day,成员函数有 count, 其作用是计算一个日期是该年的第几天,还有一个友元函数 distances,在 count 的配 合下计算两个日期的相差天数,从而计算出租车的费用,完成计费任务; 2.写一个名为 time 的类,数据成员有 year,month,day,hour。成员函数有 ryear(),rmonth(),rday(),rhour()和 lead(),前四个是此类对外的接口,便于其他函 数对私有数据成员的访问,而友元函数 lead()是用来完成对操作信息导入的任务的。 3.写一个名为 vehicle 的结构体,定义车辆链表的一个节点,其中包括数据域和 指针域 next,数据域包括变量 vid,vtype,fee,vsign,typesign,sign,k1,k2,ldate,bdate,其中 vid,vtype 是两个字符型数组,用来存放车辆的车号和类型,fee 和 visgn 分别是 double 型和 int 型的数组,用来存放每次租车的费用和租还的标志(出租标为 1,已 归还标为 2) ,sign 是有没出租记录的标志(没有出租记录的 sign 为 0,出租了的标志 为 1,还了的标志为 2) ,typesign 是租车按月或按小时的标志(按小时租为 1,按天 租为 2) ,ldate 和 bdate 是两个 class time 型的对象数组,用来存放车辆每次出租的 租还日期,k1 和 k2 是两个 int 型的变量,作为 ldate,bdate 的下标。 4.定义一个名为 sys 的类,包括一个数据成员,即 vehicle 类型的变量 b,有 v_find(),v_delete(),print()三个成员函数,分别完成链表中信息的查找、删除和 打印输出工作,输出的信息主要是车辆的车号、车型和出租状态。本来还有 v_add()函 数(在链表中添加信息)也要写在这里,但考虑到方便调用的问题,将其写在了类的 外面。sys 这个类的作用就是对针对链表的一些基本操作进行封装,方便调用。它们的 关键代码如下: 链表中查找操作的代码: vehicle *sys:find(vehicle *head,char *s) vehicle *p; p=head; while(p!=null) if(strcmp(p-vid,s)=0) return p; else p=p-next; return null; 链表中删除操作的代码,用来删除车辆信息: vehicle *sys:v_delete(vehicle *head,char *vid) vehicle *p,*q; if(head=null) std:coutvid,vid)=0) p=head; head=head-next; delete p; std:coutnext;q=q-next) if(strcmp(q-next-vid,vid)=0) p=q-next; q-next=p-next; delete p; return head; std:coutvidvtypenext; 向链表中添加节点的代码,是增加车辆操作的重要核心程序: vehicle *v_add(vehicle *head,vehicle *v) vehicle *p; p=head; if(p=null) head=v; v-next=null; return head; if(strcmp(p-vid,v-vid)0) v-next=head; head=v; return head; 5.对 sys 类里的几个成员函数进行类外定义,都是基于简单链表操作的,就是上 面提到的在链表中添加节点,删除节点,打印输出节点信息的函数。 6.开始定义系统界面函数 list()和 listview(),前者是用来接受用户对各种操作 功能的选择,然后传递给 main 函数;listview()呢完成操作界面的输出(就是列出各 个功能的操作选项) ,这都是很简单的问题,它们的代码如下: void listview() std:couti; if(i=12) continue; else break; return i; 这两个函数联合起来达到的效果如下图所示: 图 3-1 7.完成各个 listview()中各个功能函数的全面编码,前面的 sys 里面的那几个函 数只是简单的基于链表的操作,而这里写的函数都是能独立完成菜单里面单个功能的, 包括 add(),del(),print(),lend(),back(),v_find(),v_find_all(), find_fee(),find_allfee(),save(),lead(),它们的功能分别是: 完成向车库中 加车;删除车辆;打印输出车库中所有车辆;租车;还车;按车号和按年月查询单辆 车的出租信息;按年月查询本月的出租信息;按车号和按年月查询单辆车的出租费用; 按月查询本月出租费用;保存操作信息;导入上次操作信息。下面是其中几个函数的 关键核心代码: void add(sys a) char c; for(int j=0;j+) vehicle *p; p=new vehicle; std:coutp-vid; std:cinp-vtype; p-sign=0; p-typesign=0; p-k1=0; p-k2=0; p-ldatep-k1.time(0,0,0,0); p-bdatep-k1.time(0,0,0,0); p-feep-k2=0; if(p-vid!=“|p-vtype!=“) head=v_add(head,p); std:coutc; if(c!=y if(c=n|c=n) break; else continue; 这是一个完整的添加车辆的函数,是基于链表的 v_add()函数来实现的,后者只是负责 向链表中添加新节点,而此函数,是向车库添加新车,包括车牌号和车的类型。代码 的 11 到 17 行都是进行数据成员的初始化。 void lend(sys a) vehicle *p; p=new vehicle; char s10,c; int y,m,d,h; std:couts; p=a.find(head,s); if(p!=null) if(p-k1!=p-k2) std:coutsign!=1) std:coutvidvtypevtype,“car“)=0) std:couttypesign=2; std:coutymd; p-ldatep-k1.time(y,m,d); if(strcmp(p-vtype,“truck“)=0) std:coutc; if(c=d) p-typesign=2; std:coutymd; p-ldatep-k1.time(y,m,d); else p-typesign=1; std:coutymdh; p-ldatep-k1.time(y,m,d,h); p-sign=1; p-k1+; p-feep-k1=0; std:coutsign=1 的作用为标志车辆已出租,p-k1+是对 象数组的下标推进,以便保存同一辆车的下一条租车记录,p-feep-k1=0 是将费用 初始化为零。 void save() char *name=“c:vehicle.txt“; char *na=“c:number.txt“; int m=0; std:ofstream ofs(name); vehicle *p; p=head; while(p!=null) ofsvidvtypesigntypesignk1k2k1=0) ofsk1;i+) ofsldatei.ryear()ldatei.rmonth()ldatei.rday()ldatei.rhour()bdatei.ryear()bdatei.rmonth()bdatei.rday()bdatei.rhour()feeinext; m+; std:cout #include #include #include using namespace std; class time private: int year,month,day,hour; public: time(int i=0,int j=0,int k=0,int m=0):year(i),month(j),day(k),hour(m) void time(int yy=0,int mm=0,int dd=0,int hh=0) year=yy; month=mm; day=dd; hour=hh; int ryear()return year; int rmonth()return month; int rday()return day; int rhour()return hour; friend void lead(); ; struct vehicle char vid10; char vtype5; double fee1000; int vsign1000; int typesign;/作为出租方式的标志,按小时租用 1 表示,按天租用 2 表示 int sign;/作为是否出租过,租了没还,租了已还的标记,分别用 0,1,2 标志 int k1; int k2;/作为 ldate 和 bdate 对想数组的下标 time ldate1000; time bdate1000; vehicle *next; ; static vehicle *head=null;/定义全局变量 head; class date private: int year,month,day; public: date(int y,int m,int d):year(y),month(m),day(d) int count() int counter1=0,m(month-1),d(day); for(;m0;m-) if(m=4|m=6|m=9|m=11) counter1+=30; else if(m=1|m=3|m=5|m=7|m=8|m=10) counter1+=31; else if(m=2) if(year%4=0) counter1+=29; else counter1+=28; else std:couta.year;y-) if(y%4=0) counter+=366; else counter+=365; return counter; class sys private: vehicle b; public: sys(char *id=“,char *t=“,vehicle *n=null) strcpy(b.vid,id); strcpy(b.vtype,t); b.next=n; vehicle *v_delete(vehicle *head,char *s); vehicle *find(vehicle *head,char *s); void print(vehicle *head); ; vehicle *v_add(vehicle *head,vehicle *v) vehicle *p; p=head; if(p=null) head=v; v-next=null; return head; if(strcmp(p-vid,v-vid)0) v-next=head; head=v; return head; while(p-next v-next=p-next; p-next=v; return head; vehicle *sys:find(vehicle *head,char *s) vehicle *p; p=head; while(p!=null) if(strcmp(p-vid,s)=0) return p; else p=p-next; return null; vehicle *sys:v_delete(vehicle *head,char *vid) vehicle *p,*q; if(head=null) std:coutvid,vid)=0) p=head; head=head-next; delete p; std:coutnext;q=q-next) if(strcmp(q-next-vid,vid)=0) p=q-next; q-next=p-next; delete p; return head; std:coutvidvtypesign=0) std:coutsign=1) std:coutnext; void listview() std:couti; if(i=12) continue; else break; return i; void add(sys a) char c; for(int j=0;j+) vehicle *p; p=new vehicle; std:coutp-vid; std:cinp-vtype; p-sign=0; p-typesign=0; p-k1=0; p-k2=0; p-ldatep-k1.time(0,0,0,0); p-bdatep-k1.time(0,0,0,0); p-feep-k2=0; if(p-vid!=“|p-vtype!=“) head=v_add(head,p); std:coutc; if(c!=y if(c=n|c=n) break; else continue; void del(sys a) char s10; std:couts; head=a.v_delete(head,s); void lend(sys a) vehicle *p; p=new vehicle; char s10,c; int y,m,d,h; std:couts; p=a.find(head,s); if(p!=null) if(p-k1!=p-k2) std:coutsign!=1) std:coutvidvtypevtype,“car“)=0) std:couttypesign=2; std:coutymd; p-ldatep-k1.time(y,m,d); if(strcmp(p-vtype,“truck“)=0) std:coutc; if(c=d) p-typesign=2; std:coutymd; p-ldatep-k1.time(y,m,d); else p-typesign=1; std:coutymdh; p-ldatep-k1.time(y,m,d,h); p-sign=1; p-k1+; p-feep-k1=0; std:couts; p=a.find(head,s); if(p!=null) std:coutvidvtypesign!=1 p-bdatep-k2.time(y,m,d,h); if(p-typesign=2) std:coutymd; p-bdatep-k2.time(y,m,d); date a(p-ldatep-k2.ryear(),p-ldatep-k2.rmonth(),p-ldatep- k2.rday(); date b(y,m,d); dis=distances(a,b); if(strcmp(p-vtype,“car“)=0) if(dis=3) money=dis*100*0.8; else money=dis*100; if(strcmp(p-vtype,“truck“)=0) if(p-typesign=2) if(dis=3) money=dis*300*0.8; else money=dis*300; else if(p-bdatep-k2.rhour()ldatep-k2.rhour() money=(dis-1)*24+p-ldatep-k2.rhour()+24-p-bdatep- k2.rhour()*30; if(p-bdatep-k2.rhour()=p-ldatep-k2.rhour() money=(dis*24+p-bdatep-k2.rhour()-p-ldatep- k2.rhour()*30; std:coutfeep-k2=money; p
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年佳木斯市公务员考试行测真题及答案详解(易错题)
- 2024年玉溪市公务员考试行测真题完整答案详解
- 2024年日喀则地区公务员考试行测真题含答案详解
- 容器网络部署优化-洞察及研究
- 2025年北京市公务员考试行测试卷历年真题及答案详解(网校专用)
- 2024年惠州市公务员考试行测试卷历年真题及一套完整答案详解
- 农业灾害防控技术-洞察及研究
- 抗玉米赤霉烯酮纳米抗体噬菌体展示库构建和纳米抗体制备研究
- “X然”类描摹性副词多角度研究
- 董事高管责任保险对企业环境信息披露质量的影响研究
- 人教版八年级数学下册期末复习中考复习课件
- GB/T 3532-2022日用瓷器
- GB/T 1695-2005硫化橡胶工频击穿电压强度和耐电压的测定方法
- 土木工程施工课程设计完整版
- NB∕T 33009-2021 电动汽车充换电设施建设技术导则
- 检修质量管理培训课件
- 幼儿园安全教育《防溺水》课件
- 《走进民间音乐》资料
- 螺杆冷水机组使用说明书
- 2021年北京首通智城科技创新有限责任公司招聘笔试试题及答案解析
- 实习证明模板10篇
评论
0/150
提交评论