已阅读5页,还剩34页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C程序设计课程设计报告通讯录管理系统设计实例毕业论文1题目要求 (1)以通讯录管理系统为背景,通过调研、分析现有的管理模式和已有的管理软件,建立系统模型,系统以菜单方式工作。(2)完成软件结构设计和算法设计。(3)完成系统的软件开发和测试工作。(4)撰写设计说明书。 (5)做好答辩工作。2需求分析2.1 产品需求概述2.1.1 功能简介 为方便广大群众管理通讯录,设有录入、查询、查看、修改、统计五大功能,给使用者便利生活。2.1.2 运行环境(1)硬件环境:最低配置:CPU:INTEL 奔腾4及以上内存:128MB及以上硬盘:10GB及以上最佳配置:CPU:INTEL 酷睿i5及以上内存:2GB及以上硬盘:160GB及以上(2)软件环境: 操作系统:Microsoft Windows系列操作系统(Windows CE除外)。2.2 功能需求本系统支持信息录入、查询、查看、修改、统计五大功能。2.2.1信息录入功能 对每个使用者进行进行录入,实现“一人一档”,录入使用者的姓名、性别、生日、电话号码、邮编、地址。2.2.2 信息查询功能 对已录入的使用者信息进行查询,包括按姓名查询、按电话号码查询、综合查询。2.2.3 信息查看功能 对已录入的使用者信息进行查看。2.2.4 信息修改功能 对已录入的使用者信息进行修改。首先需输入修改者姓名,其次可进行删除与修改两个命令。2.2.5 信息统计功能 对已录入的使用者信息进行统计。可查看记录条数共有多少,同时可检索移动、联通、电信用户的数量。2.2.6 不支持的功能 暂未发现2.3 数据描述输入输出数据的类型及格式。输入数据:数据类型:姓名字符型性别字符型生日字符型电话字符型邮编字符型地址字符型输出数据数据类型姓名字符型性别字符型生日字符型电话字符型邮编字符型地址字符型数据流图: 图1.通讯录管理系统顶层DFD图2.通讯录管理系统0层数据流图数据字典: 数据流名称:联系人和联系方式别名:使用者信息描述:使用者录入信息时填写的信息定义:联系人和联系方式=姓名+性别+生日+电话号码+邮编+地址数据流名称:待修改信息别名:无描述:使用者修改信息时需修改的信息定义:待修改信息=姓名+性别+生日+电话号码+邮编+地址数据流名称:检索条件别名:无描述:检索时填写信息定义:检索条件=姓名或性别或生日或电话号码或邮编或地址数据流名称:符合要求的条目别名:无描述:符合检索要求的条目定义:符合要求的条目=姓名+性别+生日+电话号码+邮编+地址加工说明:录入用户信息:if(文件正常打开) 输入用户信息; if(输入字符为E或e) 结束 修改用户信息:if(输入姓名与录入用户姓名相同) if(删除) 删除该环节; else printf(姓名:);scanf(%s,p1-name); printf(性别:);scanf(%s,p1-sex); printf(生日:);scanf(%s,p1-birthday); printf(电话:);scanf(%s,p1-phone); printf(邮编:);scanf(%s,p1-postcode); printf(地址:);scanf(%s,p1-addr);查询检索条目是否与现有数据匹配:if(检索条件与查找信息匹配) printf(匹配信息) 链表后移; if(到达链表末尾) 结束3概要设计软件概要设计是从总体上把握系统设计框架,他包括模块划分、处理流程和接口设计,概要设计说明书对上述内容作了总体描述,体现了用户需求与应用系统实现之间的关系,在设计过程中起到了提纲挈领的作用。通讯录管理系统,分为五大模块:信息录入模块、信息查询模块、信息查看模块、信息修改模块、信息统计模块。采取全局变量的方式,统筹模块中的函数。使用者信息包括姓名、性别、生日、电话号码、邮编、地址。其中信息查询模块可通过使用者姓名、电话号码任一项来查询使用者信息,便于从诸多信息中筛选出所寻找的信息。而信息查看模块可直接查看所有录入的使用者信息。信息修改模块需通过使用者姓名来选择修改或是删除操作。信息统计模块可以统计出当前已录入的数量及移动、联通、电信用户已录入的数量。3.1 系统体系结构图 本部分对系统需要实现的功能进行模块化,并给出模块和模块之间的关系,需要使用流程图来对系统的整体结构进行描述,例如图 图3.系统体系结构图 3.2 模块描述模块1: 信息录入名 称信息录入标识add子系统名 称信息录入系统名称通讯录管理系统接口说明输入无输出无功能说明录入使用者信息的平台,包括使用者姓名、性别、生日、电话号码、邮编、地址运行环境说明Windows操作系统系列调用关系说明调用模块无被调用模块无模块2: 信息查询名 称信息查询标识CheckFace子系统名 称信息查询系统名称通讯录管理系统接口说明输入无输出无功能说明通过使用者姓名、电话号码或任一项信息,查询已录入的使用者信息运行环境说明Windows操作系统系列调用关系说明调用模块无被调用模块无模块3: 信息查看名 称信息查看标识AllShow子系统名 称信息查看系统名称通讯录管理系统接口说明输入无输出无功能说明查看已录入的使用者信息运行环境说明Windows操作系统系列调用关系说明调用模块无被调用模块无模块4: 信息修改名 称信息修改标识Change子系统名 称信息修改系统名称通讯录管理系统接口说明输入无输出无功能说明通过使用者姓名,修改该使用者全部个人信息运行环境说明Windows操作系统系列调用关系说明调用模块无被调用模块无模块5: 信息统计名 称信息统计标识AllNum子系统名 称信息统计系统名称通讯录管理系统接口说明输入无输出无功能说明统计已录入的使用者信息的总条数,及移动、联通、电信用户总条数运行环境说明Windows操作系统系列调用关系说明调用模块无被调用模块无4详细设计4.1 系统主要函数 函数名称函数功能ShowMenu显示主要界面HeadShow输出表头FileLoading读取文件数据add添加信息SaveChange保存修改AllShow综合显示AllNum显示总记录条数CheckFace显示消息修改界面Selelctname通过使用者姓名查询使用者信息Selelctphone通过使用者电话号码查询使用者信息Selelctall通过使用者任意信息查询使用者信息Change通过使用者姓名修改使用者信息ExirShow显示退出界面ErrorShow显示错误界面main主函数 4.2函数详细说明 4.2.1 ShowMenu函数(主界面函数)【功能】显示主要界面,其中包括信息录入、信息查询、信息查看、信息修改、信息统计五大模块。【参数】无参数要求【返回值】无返回值【算法描述】无算法要求4.2.2 HeadShow函数(界面顶端显示函数)【功能】 输出界面顶端【参数】 无参数要求【返回值】 无返回值【算法描述】无算法要求4.2.3 FileLoading函数(文件判断函数)【功能】 读取文件数据,判断文件是否操作错误【参数】 无参数要求【返回值】 无返回值【算法描述】 图4.文件判断函数结构图4.2.4 add函数(添加使用者信息函数)【功能】 添加使用者信息,例如:使用者姓名、使用者性别、使用者生日、使用者电话号码、使用者邮编、使用者地址。【参数】 无参数要求【返回值】 无返回值【算法描述】该算法需要一个字符型变量ch用来判断是否结束信息输入。在执行算法时,首先判断参数是否为“e”或“E”。如果是,则结束信息输入;如果不是,则重新进行信息输入操作。以上算法可以用流程图描述为 图5.添加使用者信息函数结构图4.2.5 SaveChange函数(保存修改函数)【功能】 使用者修改信息结束后,保存修改信息【参数】 无参数要求【返回值】 无返回值【算法描述】 图6.保存修改函数结构图4.2.6 AllShow函数(综合显示信息函数)【功能】 显示用户的信息,包括姓名、性别、生日、电话号码、邮编、地址。【参数】 无参数要求【返回值】 无返回值【算法描述】 图7.综合显示信息函数结构图4.2.7 AllNum函数(显示记录性条数函数)【功能】 显示用户信息的总记录条数【参数】 无参数要求【返回值】 无返回值【算法描述】该算法需要一个变量i用来显示总记录条数。在执行算法时,首先将p1指向链表头,从头检索链表,然后判断p1是否为空值。如果是,则输出i的值;否则进行“i+”指令。以上算法可以用流程图描述为 图8.显示记录性条数函数结构图4.2.8 CheckFace函数(显示信息查询界面函数)【功能】 显示消息查询界面,其中包括按姓名查询、按电话号码查询、综合查询【参数】 无参数要求【返回值】 无返回值【算法描述】无算法要求4.2.9 Selelctname函数(通过姓名查询信息函数)【功能】 通过使用者姓名查询使用者信息,显示被查询者的全部信息【参数】 无参数要求【返回值】 无返回值【算法描述】该算法需要一个变数i用来显示检索符合要求条数,一个变量FindName用来检索查询信息。在执行算法时,首先将输入变量FindName用文件中保存的变量p1-name进行判断是否相同。如果相同,则输出该变量p1-name所对应的使用者已输入信息,并进行“i+”指令,同时输出变量“i”;否则回到信息查询界面。以上算法可以用流程图描述为 图9.通过姓名查询信息函数结构图4.2.10 Selelctphone函数(通过电话号码查询信息函数)【功能】 通过使用者电话号码查询使用者信息,显示被查询者的全部信息【参数】 无参数要求【返回值】 无返回值【算法描述】该算法需要一个变量i用来显示检索符合要求条数,一个变量Phone用来检索查询信息。在执行算法时,首先将输入变量Phone用文件中保存的参量p1-name进行判断是否相同。如果相同,则输出该变量p1-name所对应的使用者已输入信息,并进行“i+”指令,同时输出变量“i”;否则回到信息查询界面。以上算法可以用流程图描述为 图10.通过电话号码查询信息函数结构图4.2.11 Selelctall函数(通过任意信息查询信息函数)【功能】 通过使用者任意信息查询使用者信息,显示被查询者的全部信息【参数】 无参数要求【返回值】 无返回值【算法描述】该算法需要一个变量i用来显示检索符合要求条数,一个变量all用来检索查询信息。在执行算法时,首先将输入参量all与文件中保存的参量p1-name进行判断是否相同。如果相同,则输出该参量p1-name所对应的使用者已输入信息,并进行“i+”指令,同时输出参量“i”;否则回到信息查询界面。以上算法可以用流程图描述为 图11.通过任意信息查询信息函数结构图4.2.12 Change函数(修改使用者信息函数)【功能】 通过使用者姓名,修改使用者全部信息【参数】 无参数要求 【返回值】 无返回值【算法描述】该算法需要一个变量ChangeName用来寻找需修改条目,一个变量changekey用来判断删除或是修改,一个变量i用来判断是否修改信息,一个变量y用来判断是否检索到需修改条目。在执行算法时,首先将输入变量ChangeName与文件中保存的变量p1-name进行判断是否相同。如果不同,则通过变量y等于0来输出“对不起,没有找到要删除的通讯名单,请检查你要修改的姓名是否正确”,否则输出检索到的使用者信息,同时显示“您要修改的是这条记录吗?1-是|2-否”,此时通过输入变量changekey来判断删除或修改。如果输入变量为1,则删除该使用者信息;如果输入变量为2,则修改该使用者信息,否则回到主界面。以上算法可以用流程图描述为 图12.修改使用者信息函数结构图4.2.13 ExirShow函数(显示退出界面函数)【功能】 显示退出通讯录管理系统界面【参数】 无参数要求【返回值】 无返回值【算法描述】无算法要求4.2.14 ErrorShow函数(显示发生错误时界面)【功能】 发生错误时,提醒提醒使用者的界面,例如输入数据不符合定义或者输入的数据无法进行函数操作等【参数】 无参数要求【返回值】 无返回值【算法描述】无算法要求4.2.15 main函数(主函数)【功能】 主函数【参数】无参数要求【返回值】 无返回值【算法描述】在执行算法时,首先判断是否存在文件。如果无,则输出“文件操作错误,请检查是否有权限操作文件!”;否则,输出ShowMenu函数。接着,通过输入参数key,判断执行函数。若为1,则执行add函数;若为2,则执行CheckFace函数;若为3,则执行AllShow函数;若为4,则执行Change函数;若为5,则执行AllNum函数;若为6,则执行ExirShow函数;否则,执行ErrorShow函数。在CheckFace函数执行时,通过输入参数Check_key,判断执行函数。若为1,则执行Selelctname函数;若为2,则执行Selelctphone函数;若为3,则执行Selelctall函数;若为4,则返回主界面;否则,执行ErrorShow函数。以上算法可以用流程图描述为 图13.主函数结构图5系统测试5.1系统欢迎界面运行结果 图14.系统欢迎界面5.2信息录入界面主界面输入1,进入信息修改界面,运行结果 图15.信息录入界面5.3信息查询界面主界面输入2,进入信息查询界面,运行结果 图16.系信息查询界面5.3.1信息按姓名查询界面信息查询界面输入1,进入信息按姓名查询界面,运行结果 图17.信息按姓名查询界面5.3.2信息按电话号码查询界面信息查询界面输入2,进入信息按电话号码查询界面,运行结果 图18.信息按电话号码查询界面5.3.3信息综合查询界面信息查询界面输入3,进入信息综合查询界面,运行结果 图19.信息综合查询界面5.4信息查看界面主界面输入3,进入信息查看界面,运行结果 图20.信息查看界面5.5信息修改界面主界面输入4,进入信息修改界面,运行结果 图21.信息修改界面5.6信息修改界面主界面输入5,进入信息修改界面,运行结果 图22.信息修改界面5.7系统退出界面主界面输入6,进入系统退出界面,运行结果 图23.系统退出界面6总结 通过C程序设计这门课,使我对C语言这门课程有了更深一步的了解。它是计算机程序设计的重要理论技术基础,在我们计通院的计算机科学与技术专业的学习中占据着十分重要的地位。同时也使我们知道,要学好这门课程,仅学习书本上的知识是不够的,还要有极强的实践能力。因为我们学习知识就是为了实践。而只有多实践,多编写程序,才能更好的理解与掌握书本上的东西。在遇到不懂的时候,要善于请教他认,不要认为自己什么都懂,这种想法是极其错误的,只有不断吸收他人好的方面,充实自己,自己才能不断的进步。计算机是是一门特殊的专业,书上学到的,永远要小于自己实践中收获的知识。经过连续几日的不断探索与辛苦努力,对许多平时不大关注的指令有了更为深刻的了解。同时在使用C语言时,也能结合DOS控制指令,对程序的运算进行简化,便于程序的运算。对于该通讯录管理系统,按照模块的方式来编写,每一个模块都是一个函数,便于查看,思路清晰,运行简捷,封面美观。其中在程序中设立了背景颜色指令与字体颜色指令,增加的本程序的魅力。同时在执行每一个函数之前,都进行清屏指令,使得系统更为美观。通过对C程序设计课程的逐步理解,让我明白生成一个系统,需要从多个方面去考虑,编程时则需逐步进行,以模块的形式来思考问题并解决问题,同时要以函数的方式来生成所需系统,做到严谨而简洁,快捷而不失条理。参考文献1王为青,刘变红.C语言高级编程及实例剖析M.北京:人民邮电出版社,20072张长海.C语言程设计M.北京:高等教育出版社,20063陈建新,李志敏.数据结构实验指导与课程设计教程M.北京:科学出版社,20104吴玉蓉,李劲.数据结构(C语言版)M.北京:中国水利水电出版社,20085谭浩强.C语言程设计M.北京:清华大学出版社,20056王连相.C/C+程序设计教程(第二版)M.中国铁道出版社,2011致 谢通过本次课设,首先要感谢老师,给了我一次接触专业应用的机会,通过此次设计,让我更清楚得认识到程序在现实中各行各业的应用之广泛,更加清楚得认识到我学习的方向。同时也让我明白设计一个系统时所需注意的诸多方面,比如从函数到模块,再从模块到整个系统;注意谨慎使用全局变量,便于调控系统及减少出错率;设计系统不只是编程的问题,还需要通过调查诸多文献资料,从硬件环境、软件环境等方面来思考。其次要感谢刘伟强同学的大力配合,对文档编辑一丝不苟,流程图做到明了,函数描述做到精确,对图片各种注意点做到尽善尽美,以严谨的态度对待,以高标准严格要求自己。附录:源程序#include #include #include struct Signchar name8;char sex4;char birthday12;char phone11;char postcode7;char addr30;struct Sign *next;pe; char PhoneCop4 ;/结构体 struct Sign *p1,*p2,*head;FILE *fp;void ShowMenu()system(color 1F);printf(# 通讯录管理系统 v1.0 #n);printf(#n);printf(# #n);printf(# 1-信息录入- #n);printf(# #n);printf(# 2-信息查询- #n);printf(# #n);printf(# 3-信息查看- #n);printf(# #n);printf(# 4-信息修改- #n);printf(# #n);printf(# 5-信息统计- #n);printf(# #n);printf(# 6-退出系统- #n);printf(# #n);printf(#n); printf(# POWER BY 耿丙乾 刘伟强 兰州理工大学 201407 #n); printf(#n);void HeadShow()printf(# 通讯录管理系统 v1.0 #n);printf(-n); void FileLoading()if(fp=fopen(txl.dat,rb)=NULL)printf(文件操作错误,请检查是否有权限操作文件!);Sleep(3000);exit(1);p1=(struct Sign*)malloc(sizeof(struct Sign); p1-next=NULL;head=p1;while(!feof(fp)if(fread(p1,sizeof(struct Sign),1,fp)!=1)break;p2=(struct Sign*)malloc(sizeof(struct Sign);p2-next=NULL;p1-next=p2;p1=p2;fclose(fp);void add()char ch; if(fp=fopen(txl.dat,ab+)!=1)printf(文件打开失败);exit(1);while(1)system(cls);printf(请输入_n);p2=(struct Sign*)malloc(sizeof(struct Sign);p2-next=NULL; printf(姓名:);scanf(%s,);printf(性别:);scanf(%s,pe.sex);printf(生日:);scanf(%s,pe.birthday);printf(电话号码:);scanf(%s,pe.phone);printf(邮编:);scanf(%s,pe.postcode);printf(地址:);scanf(%s,pe.addr);strcpy(p1-name,);strcpy(p1-sex,pe.sex);strcpy(p1-birthday,pe.birthday);strcpy(p1-phone,pe.phone);strcpy(p1-postcode,pe.postcode);strcpy(p1-addr,pe.addr);p1-next=p2;p1=p2; if(fwrite(&pe,sizeof(struct Sign),1,fp)!=1)printf(写入错误);printf(输入E或e来结束输入?);getchar();ch=getchar();if(ch=e|ch=E)break;fclose(fp);void SaveChange()if(fp=fopen(txl.dat,w)!=1)printf(文件打开失败);exit(1);p1=head;while(p1-next!=NULL)if(fwrite(p1,sizeof(struct Sign),1,fp)!=1)printf(写入错误);p1=p1-next; fclose(fp);void AllShow()HeadShow();printf(%10.8s %6.6s %10.10s %11.4s %9.7s %16.6s n,姓名,性别,生日,电话,邮编,地址);printf(-n);p1=head;while(p1-next!=NULL)printf(%10.8s %6.6s %10.12s %11.11s %9.7s %16.16s n,p1-name,p1-sex,p1-birthday,p1-phone,p1-postcode,p1-addr);p1=p1-next; void AllNum()int i=0; HeadShow();printf( 共有记录条数为: n);printf(-n);p1=head;while(p1-next!=NULL)i+;p1=p1-next; printf( %d n,i);printf(-n);printf( 共有联通用户为: n);printf(-n);p1=head;i=0;while(p1-next!=NULL)strncpy(PhoneCop,p1-phone,3);if(strcmp(PhoneCop,130)=0|strcmp(PhoneCop,131)=0|strcmp(PhoneCop,132)=0|strcmp(PhoneCop,155)=0|strcmp(PhoneCop,156)=0|strcmp(PhoneCop,185)=0|strcmp(PhoneCop,186)=0)i+;p1=p1-next; printf( %d n,i);printf(-n);printf( 共有移动用户为: n);printf(-n);p1=head;i=0;while(p1-next!=NULL)strncpy(PhoneCop,p1-phone,3);if(strcmp(PhoneCop,134)=0|strcmp(PhoneCop,135)=0|strcmp(PhoneCop,136)=0|strcmp(PhoneCop,137)=0|strcmp(PhoneCop,138)=0|strcmp(PhoneCop,139)=0|strcmp(PhoneCop,150)=0|strcmp(PhoneCop,151)=0|strcmp(PhoneCop,152)=0|strcmp(PhoneCop,157)=0|strcmp(PhoneCop,158)=0|strcmp(PhoneCop,159)=0|strcmp(PhoneCop,187)=0|strcmp(PhoneCop,188)=0)i+;p1=p1-next; printf( %d n,i);printf(-n);printf( 共有电信用户为: n);printf(-n);p1=head;i=0;while(p1-next!=NULL)strncpy(PhoneCop,p1-phone,3);if(strcmp(PhoneCop,180)=0|strcmp(PhoneCop,189)=0|strcmp(PhoneCop,133)=0|strcmp(PhoneCop,153)=0)i+;p1=p1-next; printf( %d n,i);printf(-n);void CheckFace()int Check_key; printf(# 通讯录管理系统 v1.0 #n);printf(#n);printf(# #n);printf(# 1-按姓名查询 #n);printf(# #n);printf(# 2-按电话号码查询 #n);printf(# #n);printf(# 3-综合查询 #n);printf(# #n);printf(# 4-退出查询模块 #n);printf(# #n);printf(# #n);printf(# #n);printf(#n); printf(# POWER BY 耿丙乾 刘伟强 兰州理工大学 201407 #n); printf(#n); void Selelctname()system(cls); HeadShow();printf(%10.8s %6.6s %10.10s %11.4s %9.7s %16.6s n,姓名,性别,生日,电话,邮编,地址);printf(-n);p1=head;char FindName8;int i=0; printf(请输入要查询的姓名:);scanf(%s,&FindName);while(p1-next!=NULL)if(strcmp(p1-name,FindName)=0) printf(%10.8s %6.6s %10.10s %11.14s %9.7s %16.16s n,p1-name,p1-sex,p1-birthday,p1-phone,p1-postcode,p1-addr); i+;p1=p1-next; printf(共 %d 条n,i);system(pause); void Selelctphone()system(cls); HeadShow();printf(%10.8s %6.6s %10.10s %11.4s %9.7s %16.6s n,姓名,性别,生日,电话,邮编,地址);printf(-n);p1=head;char phone11;int i=0; printf(请输入要查询的电话号码:);scanf(%s,&phone);while(p1-next!=NULL)if(strcmp(p1-phone,phone)=0) printf(%10.8s %6.6s %10.10s %11.4s %9.7s %16.6s n,p1-name,p1-sex,p1-birthday,p1-phone,p1-postcode,p1-addr); i+;p1=p1-next; printf(共 %d 条n,i);system(pause); void Selelctall()system(cls); HeadShow();printf(%10.8s %6.6s %10.10s %11.4s %9.7s %16.6s n,姓名,性别,生日,电话,邮编,地址);printf(-n);p1=head;char all30;int i=0; printf(请输入任意一项要查询的内容:);scanf(%s,&all);while(p1-next!=NULL)if(strcmp(p1-name,all)=0|strcmp(p1-sex,all)=0|strcmp(p1-birthday,all)=0|strcmp(p1-phone,all)=0|strcmp(p1-postcode,all)=0|strcmp(p1-addr,all)=0) printf(%10.8s %6.6s %
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 产科虚拟教学在分娩准备教育中的实践
- 参加企业管理知识培训心得感悟范文
- 皮下脂肪增生的发生率及成本分析
- 初一政治教师工作计划 (二)
- 交叉设计在生物等效性试验中的GLP合规实践
- 气管切开意外拔管应急预案和处置程序
- 安徽省蚌埠市2025-2026学年高二生物上学期10月联考试题
- 毕业论文书写格式、版面及装订标准
- 主动脉疾病MDT诊疗模式实践
- 浅谈教师在大班幼儿建构游戏中的支持性策略研究
- 99S203 消防水泵接合器安装图集
- 售后配件管理制度
- 《公路工程行业标准制修订管理导则》(JTG 1002-2022)
- 老年性尿失禁成医课件
- 五年级上册数学同步拓展课件-取球问题 人教版(共11张PPT)
- 药物中间体以及合成
- 蔷薇花的形态特征
- 机动车环检标准方法验证模板
- 机场管制5 - 跑道侵入
- 土木工程专业毕业论文《商务公寓设计-框架计算书》
- HR工作法律手册(人力资源管理全案-法务篇)
评论
0/150
提交评论