版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、四川师范大学成都学院高级语言程序课程设计基于C语言的图书管理系统程序设计 学生姓名XXX学 号XXXX所在学院通信工程学院专业名称通信工程班 级XXXX指导教师XX成 绩 四川师范大学成都学院二一四年十二月四川师范大学成都学院课程设计报告基于C语言的图书管理系统程序设计内容摘要:图书管理系统是图书馆的重要组成部分,图书是我们最好的获取信息的方式,但由于图书馆图书收藏量大大增加,使传统的图书管理员的工作日益繁重起来,迫使人们起用新的管理方法来管理图书。基于C语言的设计和开发图书馆管理系统的实践,阐述了图书管理软件中所应具有的功能、设计、实现。介绍了图书管理系统的设计和系统功能的实现过程。该系统可
2、以运用于高校的图书管理,由图书编目,图书流通,标准管理,资料管理,系统维护等多个子系统组成,实现对新进图书基本信息的输入、图书基本信息的查询、对撤消图书信息的删除、为借书人办理注册、办理借书手续、办理还书手续等。实现了图书资料的计算机网络管理。关键词:图书管理 C语言 程序设计Based on the C language library management system program designAbstract:Library management system is an important part of the library, the book is our best way
3、to get information, but due to the large increase in collection of library books, so that the traditional librarian's work increasingly heavy up, forcing people hired new management ways to manage books.Based on the practice of the C language library management system design and development, des
4、cribed the library management software should have the functionality, design, implementation. Describes the design and implementation of system functions library management system. The college library management system can be applied by cataloging, book circulation, standard management, data managem
5、ent, system maintenance, and other subsystems to realize new books into the input basic information, basic information queries books, books for revocation delete information, registration for the borrower, for the library procedures apply also book procedures. Achieve a computer network management l
6、ibrary materials.Keywords:Library management C language Program design目 录前 言11绪论11.1选题背景和选题意义11.1.1选题背景11.1.2选题意义11.2图书管理系统简介11.3图书管理系统需求分析22系统分析32.1题目分析32.2系统分析33管理系统的总体设计与详细设计43.1总体设计43.2详细设计54调试与测试165编码实现166结 论21附录 程序源代码21参考文献29III基于C语言的图书管理系统程序设计前 言图书馆管理信息系统是对学校图书进行全面信息管理的系统。该管理系统可以有效地管理学校图书资源,记
7、录学校与读者之间的使用书籍情况。此外,根据读者的要求,实现书籍基本信息的输入,查询等几个方面的功能。本系统可以作为独立的系统使用,它包括借阅信息管理、书籍信息管理、读者信息管理、系统管理四个主要的功能模块。该管理系统力求给读者方便快捷的途径去及时了解书籍信息。针对各个模块不同的数据表实现添加记录、修改记录、删除记录、以及查询显示记录等功能,所有的操作方便而快捷,并全面实现了图书馆管理的各项功能。1绪论1.1选题背景和选题意义1.1.1选题背景随着社会的发展及知识经济时代的到来,信息管理系统在各行各业发挥着越来越重要的作用。而在高校的图书管理中,避免了手工操作而带来的一些不必要的问题。1.1.2
8、选题意义图书馆作为一种信息资源的集散地,图书和用户借阅资料繁多,包含很多的信息数据的管理,现今,有很多的图书馆都是初步开始使用,甚至尚未使用计算机进行信息管理。根据调查得知,他们以前对信息管理的主要方式是基于文本,表格等纸介质的手工处理,数据处理工作量大,容易出错。由于数据繁多,容易丢失,且不易查找。总的来说,缺乏系统规范的信息管理手段。尽管有的图书馆有计算机,但是尚未用于信息管理,没有发挥它的效力,资源闲置比较突出,这就是管理信息系统的开发的基于环境。1.2图书管理系统简介图书管理系统是图书馆的重要组成部分,图书是我们最好的获取信息的方式,但由于图书馆图书收藏量大大增加,使传统的图书管理员的
9、工作日益繁重起来,迫使人们起用新的管理方法来管理图书。本文通过设计和开发图书馆管理系统的实践,阐述了图书管理软件中所应具有的功能、设计、实现。介绍了图书管理系统的设计和系统功能的实现过程。该系统可以运用于高校的图书管理,由图书借阅,图书归还,图书查询,图书信息修改,等多个模块组成,实现了图书资料的计算机网络管理。一般通用的图书馆管理系统通常包括系统管理、读者管理、编目、图书流通、统计、查询等功能。比较先进的系统能够在一个界面下实现图书、音像、期刊的管理,设置假期、设置暂离锁、暂停某些读者的借阅权、导入导出读者资料、交换MARC(Machine Readable Catalogue)数据、升级辅
10、助编目库、征订图书等。此外,随着工Internet应用的发展,一个完善的系统还应提供无缝接入Internet的功能,通过IE浏览器让读者使用借阅资料查询、更换密码、预约、资料检索等功能。有些系统还能提供读者自助服务,可以开放一些客户机让读者自行管理密码、查询自己的借阅史、预约资料、检索资料等。1.3图书管理系统需求分析为满足图书管理现代化的需求,国内软件商已开发出很多商品化图书管理软件,但他们大多是面向大型专业图书馆而开发的,专业性强,操作和使用比较复杂,难以掌握。而国内很多中小型图书馆由于管理人员不多且大多数不是图书管理业务的专业人员、业务分工也不是很详细、明确,这样的软件对于他们而言太复杂
11、,所以应用效果并不是很好。目前在大的图书馆己经有一整套比较完善的信息管理系统,而在一般小型图书馆中大部分工作还是进行手工管理,工作效率低,并不能即时了解图书馆各类图书的库存,读者比较需求的图书难以在短时间内找到,图书的入库和更新比较麻烦等等,不便于动态及时调整图书结构。同时由于不可避免的人为因素,造成数据的遗漏、误报等。为了更好的适应当前中小型图书馆的读者借阅需求,缓解手工管理存在的各种弊端,因此开发了面向中小型图书馆的图书管理系统,为用户提供全方位的信息服务。通过对中小型图书馆的调查、分析发现,用户的需求可分为4个方面:第一是图书馆的工作人员通过计算机来管理各类图书,分类编号、调整图书结构、
12、增加图书库存,适应读者的需求。第二是读者能通过计算机来查询浏览图书馆中的图书,来确定自己需要的书籍,为借阅做好准备。第三是工作人员对读者的借书情况能够作好全面掌握,能及时得到每个读者的当前借阅状态和历史借阅记录。第四也是图书馆的核心工作,对图书的借阅管理。在软、硬件方面对系统的需求是软件要易学,容易掌握,可以很简单方便地管理各种图书信息。硬件的配置要求不能太高,这样可以适应中小型图书馆的经济条件。总之,中小型图书馆管理信息系统旨在提供一个可以操作的,方便查询的,易于修改的辅助管理系统。同时提供了系统智能辅助与用户自主选择的两种方式,提高查询效率。2系统分析2.1题目分析本课程设计任务的目的是要
13、求学生按照分析、设计、编码、调试和测试的软件开发过程独立完成管理系统设计,以及C语言算法的掌握,并能最终实现本系统的功能要求,通过这个程序可以学习到以前调试短程序没有的的经验。要求为各项操作功能设计一个菜单。应用程序运行后,先显示这个菜单,然后用户通过菜单项选择希望进行的操作项目;要求以上功能分别用函数实现。2.2系统分析图书馆管理系统包括:l 录入:新进图书及基本信息输入l 删除:旧图书及基本信息删除l 查询:查询要借阅的图书信息l 修改:修改已有的图书信息l 借书:实现用户办理借书手续l 还书:实现用户.办理还书手续系统以菜单方式工作,界面友好,易于操作。系统的程序设计环境;:本系统使用V
14、isual C+ 作为程序开发工具。Visual C+1是基于对象的快速应用程序开发工具,是当今最强大、最灵活的应用程序开发工具之一,具有良好的可视化应用程序开发环境和强大的可扩展数据库功能。利用Visual C+提供的可视化组件库进行编程,可以快速、高效地开发出基于Windows环境的各类应用程序。Visual C+语言的特点是面向对象设计的程序语言,Visual C+的基础编程语言是具有面向对象特性的语言,具有代码稳定、可读性好、编译速度快等优点,并将面向对象的概念移植到了C语言中,使这种基础语言有了新的发展空间。与其它编程软件相比,特别是在数据库和网络应用方面,Visual C+具有简便
15、易用、灵活高效的特点。开发软件通常要经过修改2源代码、编译、测试、再修改、再编译、再测试等操作,这些操作形成了一个开发循环,所以快速的编译器可以大大地降低开发周期。Visual C+正是建立在这种高效编译器的基础之上,是针对Windows的最快的高级语言代码编译器,因此生成的代码十分精练高效,使Visual C+程序的运行速度更快。这也是本人使用Visual C+作为程序设计开发语言的重要原因。3管理系统的总体设计与详细设计3.1总体设计总体设计目标:使用者可以利用本系统进行对图书馆借阅的各项运算操作,如根据用户的需求自动的进行添加图书,删除图书,借书还书。查找所要的图书,查阅图书的详细资料,
16、查阅读者的详细资料。最后清晰完整的结果于屏幕中。大大方便使用者对图书借阅的操作,不仅节省时间,而且提高准确性,可以达到事半功倍的效果。总体设计策略:本系统采用的是3自顶向下、层次化的模块结构。对高层模块,采用以事务为中心的设计策略,把一个大的模块逐步分解成较小的相对简单的模块。对低层模块,采用以变换为中心的设计策略。为了提高每个模块的内聚性、降低模块间的耦合性,将每个模块设计成具有单一功能的模块(即功能内聚),使模块间的联系完全是通过主模块的控制和调用来实现(即4非直接耦合)。结合上述分析该系统应包括以下模块:信息输入、信息删除,信息查询,信息显示,信息修改,图书借出、图书归还。结构图如图3-
17、1:图书馆管理系统 信息输入 图书归还图书借出显示信息信息修改信息查询信息删除 图3-1 结构框图图书数据:序号、书名、作者、出版社、存数、总数。3.2详细设计 主函数主函数要求设计比较简洁,只提供设5输入,处理和输出部分的函数调用。其中各功能模块用菜单方式选择。流程图如下图3-2:显示一系列功能选项输入n,判断n是否1-8根据输入的值调用各功能模块的函数 图3-2 主函数流程图程序: void main(void) menu: page_title("操作选单"); printf("请用数字键选择操作nn"); printf("ttt1 注册
18、新书ttt2 借阅图书 n"); printf("ttt3 查询图书信息ttt4 修改图书信息n"); printf("ttt5 归还图书ttt6 删除图书n"); printf("ttt7 显示图书ttt8 退出系统n"); printf("请按数字键:n"); switch(getch() case '1' : book_add(); break; case '2' : book_out(); break; case '3' : book_search(
19、); break; case '4' : book_change(); break; case '5' : book_in(); break; case '6' : book_del(); break; case '7' : book_show(); break; case '8' : exit(0); goto menu; 输入模块分析:该模块的功能是假如用户需要新加入新的图书信息,通过6键盘输入将新信息逐条加在原来输入文件上但不能覆盖原有信息。 流程图如下图3-3:图3-3 输入模块流程图程序:void boo
20、k_add(void) int n; system("cls");page_title("注册新书"); for(n=0;n<100;n+) if(booksn.id=0) break; printf("序号:"); scanf("%d",&booksn.id); printf("书名:"); scanf("%s",&); printf("作者:"); scanf("%s",&book
21、sn.author); printf("出版社:"); scanf("%s",&booksn.publish); printf("数量:"); scanf("%d",&booksn.total); booksn.store=booksn.total; return_confirm(); 删除模块分析:该模块用于显示所有图书信息,由于记录7较多,故而采取分屏显示。显示完所有纪录后,用户需输入图书编号进而查找图书信息。流程图如下图3-4:输入要删除的图书序号是否有该书书没有找到相关信息该书已删除返回主菜
22、单图3-4 删除模块流程图程序:int book_del(void) int n,num,i; system("cls"); page_title("删除图书"); printf("请输入所要删除的书的编号:"); scanf("%d",&num); for(n=0;n<100;n+) if(booksn.id=num) for(i=n;i<100;i+) booksi.id=booksi+1.id; strcpy(,booksi+1.name); strcpy(books
23、i.publish,booksi+1.publish); printf("该书已删除.n"); return n; printf("没有找到相关记录n"); return -1; 查询模块分析:改模块功能应体现为用户输入图书书名,若有书则查询8出来。流程图如下图3-5:显示主菜单,输入数字输入要查询的书名是否有该书没有找到相关记录显示找到的图书信息图3-5 查询模块流程图返回主菜单程序: int book_search(void) int n,i=1; char nam30; system("cls"); printf("请
24、输入书名:"); scanf("%s",&nam); for(n=0;n<100;n+) if(strcmp(,nam)=0) printf("序号:%dt",booksn.id); printf("书名:%st",); printf("作者:%st",booksn.author); printf("出版社:%st",booksn.publish); printf("存数:%dt",booksn.store)
25、; printf("总数:%dn",booksn.total);i=0; if(i=1) printf("n没有找到相关记录.n"); return -1; 修改模块分析:该模块功能应体现为用户修改图书信息,若有记录则修改信息。流程图如下图3-6:图3-6 修改模块流程图程序: int book_change(void) int n,i; system("cls"); page_title("修改图书信息"); printf("请输入要修改的图书编号:"); scanf("%d&quo
26、t;,&i); for(n=0;n<100;n+) if(booksn.id=i) printf("修改书名:"); scanf("%s",); printf("修改作者:"); scanf("%s",booksn.author); printf("修改出版社名:"); scanf("%s",booksn.publish); printf("修改总数:"); scanf("%d",&books
27、n.total);printf("修改图书信息成功.n"); booksn.store=booksn.total; return n; printf("n没有找到相关记录.n"); return -1; 显示模块分析:该模块功能应体现为显示全部的图书信息。流程图如下图3-7:图3-7 显示模块流程图程序: int book_show(void)int n,i=1;system("cls"); for(n=0;n<100;n+) if(strlen()!=0) printf("序号:%dt"
28、;,booksn.id); printf("书名:%st",); printf("作者:%st",booksn.author); printf("出版社:%st",booksn.publish); printf("存数:%dt",booksn.store); printf("总数:%dn",booksn.total); i=0; if(i=1) printf("n没有找到相关记录.n"); return -1; 借出模块分析:该模块功能应体现为用户输入图
29、书序号,若有书则要求输入账号。流程图如下图3-8:图3-8 借书模块流程图程序:void book_out(void) int n,s,l,d;system("cls"); page_title("借阅图书"); if(n=search_book()!=-1&&booksn.store>0) printf("请输入借书证序号:"); scanf("%d",&s); printf("请输入可借天数:"); scanf("%d",&d); f
30、or(l=0;l<10;l+) if(booksn.usrl=0) booksn.usrl=s; booksn.daysl=d; break; booksn.store-; if(n!=-1&&booksn.store=0) printf("此书已经全部借出.n"); return_confirm(); 归还模块分析:该模块功能应体现为方便用户归还图书流程图如下图3-9: 输入要归还的图书序号是否有该书书没有找到相关信息显示记录,输入相关信息返回主菜单图3-9 归还图书模块程序:void book_in(void) int n,s,l; page_ti
31、tle("归还图书"); if(n=search_book()!=-1&&booksn.store<booksn.total) printf("借阅者图书证列表:n"); for(l=0;l<10;l+) if (booksn.usrl!=0) printf("%d- %d天n",booksn.usrl,booksn.daysl); printf("请输入借书证序号:"); scanf("%d",&s); for(l=0;l<10;l+) if(book
32、sn.usrl=s) booksn.usrl=0; booksn.daysl=0; break; booksn.store+; if(n!=-1&&booksn.store=booksn.total) printf("全部入藏.n"); return_confirm(); 公共函数定义结构体: struct BOOK int id,usr10,total,store,days10,zt; char name31,author21; books100;void page_title(char *menu_item) printf("ttt*欢迎使用图
33、书馆管理系统*nn- %s -nn",menu_item); void return_confirm(void) printf("n按任意键返回n");getch(); 4调试与测试第一,用一组简单的数据对程序进行调试,是否各函数有出错现象。然后用复杂数据对程序进行调试。直到确定程序对正常数据没有错误为止。第二,当数据测试时,程序错误,要首先找到出错的函数,对函数中各个变量进行观察,有时变量很多,循环多重不要急,对各个数据的观察,对程序的调试有很大的帮助。你也可以先对几个变量熟悉后,在多重循环里,确定正确的数据,将其跳过调试,对有疑问的数据循环进行仔细观察。虽然这
34、是比较省力气的活,但对复杂的数据错误并不是很有效,所以仔细观察每个数据的变化对调试的成功与否有决定性作用。第三,测试时,根本的错误并不一定在运行错误的函数内,或许在前面的函数内已经奠定了这些错误数据的基础,需要反过头来,对所有的的函数进行一项项的调试!从程序运行的第一个函数开始调试。按照程序运行的步骤下去。一个个的确定函数的正确性,每确定一个函数,在以后的调试中可以减少对该函数的调试次数,或者直接跳到下一个函数。所谓的各个击破便是如此。对头文件中的各个函数的返回值和它所要传入的参变量及其功能更是需要注意。第四,调试时,需要对错误缩小范围,从整个程序到指定函数,再到指定区域,再到指定行,在对程序
35、缩小范围或对编译没通过的程序缩小错误范围时可以用"/* */"来进行调试,确定正常范围,缩小错误范围。5编码实现 主界面截图图5-1 主界面 注册新书界面截图图5-2 新书注册 显示界面截图图5-3 图书显示 借阅界面截图图5-4 图书借阅 归还界面截图图5-5 图书归还 查询界面截图图5-6 图书查询 修改界面截图图5-7 修改图书 删除界面截图图5-8 删除界面6结 论经过以上各章节的介绍,已经完成了图书馆管理系统的开发,图书馆系统是一套实用性非常强的系统,从小学、中学直到大学,很多人一直与图书馆打交道,图书馆的发展从手工管理、手工管理和计算机管理并行,直到现在的完全计
36、算机管理。图书馆管理系统不仅需要灵活的交互功能,还需要经常与数据库进行联系,要求具有操作简单和功能强大的数据库访问能力。界面尽量美观友好、多彩多姿,完全的图形化设计,操作者易于上手,同时多种媒体技术的集成利用,可以方便的完成用户乐于接受的各种界面设计。本系统虽具备了基本的功能,但由于时间关系,还有很多功能待实现,在此基础上结合实际应用中所出现的问题,要改善图书的入库和删除功能,使工作人员在主界面上就能进行其操作;在过期天数中应该增加罚款的功能;如果作为校园的图书管理系统,应区分出不同身分的人(如教师和学生)的借阅权限等。通过这次编程我深深的感受到对代码的变量命名,代码内注释格式,甚至嵌套中行缩
37、进的长度和函数间的空行数字都有明确规定,良好的编写习惯,不但有助于代码的移植和纠错,也有助于不同人员之间的协作。我们还要有模块化思维能力,模块化思维就是编程任何一个功能模块或函数的时候,要多想一些,不要局限在完成当前任务的简单思路上,想想看该模块是否可以脱离这个系统存在,是否可以通过简单的修改参数的方式在其他系统和应用环境下直接引用,这样就能极大避免重复性的开发工作。善于总结,也是学习能力的一种体现,每次完成一个编程任务,完成一段代码,都应当有目的的跟踪该程序的应用状况,随时总结,找到自己的不足,这样所编写的程序才能逐步提高。附录 程序源代码#include <stdio.h>#i
38、nclude <stdlib.h>#include <conio.h>#include <string.h>struct BOOK int id,usr10,total,store,days10; char name30,author20,publish40; books100;void page_title(char *menu_item) printf("ttt*欢迎使用图书馆管理系统*nn- %s -nn",menu_item); void return_confirm(void) printf("n按任意键返回n&quo
39、t;); getch(); int search_book(void) int n,i; printf("请输入图书序号:"); scanf("%d",&i); for(n=0;n<100;n+) if(booksn.id=i) printf("序号:%dn",booksn.id); printf("书名:%sn",); printf("作者:%sn",booksn.author); printf("出版社:%sn",booksn.publ
40、ish); printf("存数:%dn",booksn.store); printf("总数:%dn",booksn.total); return n; printf("n没有找到相关记录.n"); return -1; int book_search(void) int n,i=1; char nam30; system("cls"); printf("请输入书名:"); scanf("%s",&nam); printf("查询结果如下:n")
41、; for(n=0;n<100;n+) if(strcmp(,nam)=0) printf("序号:%dt",booksn.id); printf("书名:%st",); printf("作者:%st",booksn.author); printf("出版社:%st",booksn.publish); printf("存数:%dt",booksn.store); printf("总数:%dn",booksn.total);i=
42、0; if(i=1) printf("n没有找到相关记录.n"); return -1; int book_change(void) int n,i; system("cls"); page_title("修改图书信息"); printf("请输入要修改的图书序号:"); scanf("%d",&i); for(n=0;n<100;n+) if(booksn.id=i) printf("修改书名:"); scanf("%s",booksn.n
43、ame); printf("修改作者:"); scanf("%s",booksn.author); printf("修改出版社名:"); scanf("%s",booksn.publish); printf("修改总数:"); scanf("%d",&booksn.total); printf("修改图书信息成功.n"); booksn.store=booksn.total; return n; printf("n没有找到相关记录.n&q
44、uot;); return -1; int book_show(void)int n,i=1;system("cls"); for(n=0;n<100;n+) if(strlen()!=0) printf("序号:%dt",booksn.id); printf("书名:%st",); printf("作者:%st",booksn.author); printf("出版社:%st",booksn.publish); printf("存数:
45、%dt",booksn.store); printf("总数:%dn",booksn.total); i=0; if(i=1) printf("n没有找到相关记录.n"); return -1;void book_out(void) int n,s,l,d;system("cls"); page_title("借阅图书"); if(n=search_book()!=-1&&booksn.store>0) printf("请输入借书证序号:"); scanf(&qu
46、ot;%d",&s); printf("请输入可借天数:"); scanf("%d",&d); for(l=0;l<10;l+) if(booksn.usrl=0) booksn.usrl=s; booksn.daysl=d; break; booksn.store-; if(n!=-1&&booksn.store=0) printf("此书已经全部借出.n"); return_confirm(); void book_in(void) int n,s,l; system("c
47、ls"); page_title("归还图书"); if(n=search_book()!=-1&&booksn.store<booksn.total) printf("借阅者图书证列表:n"); for(l=0;l<10;l+) if (booksn.usrl!=0) printf("%d - %d天n",booksn.usrl,booksn.daysl); printf("请输入借书证序号:"); scanf("%d",&s); for(l=0;
48、l<10;l+) if(booksn.usrl=s) booksn.usrl=0; booksn.daysl=0; break; booksn.store+; if(n!=-1&&booksn.store=booksn.total) printf("全部入藏.n"); return_confirm(); void book_add(void) int n; system("cls");page_title("注册新书"); for(n=0;n<100;n+) if(booksn.id=0) break; printf("序号:"); scanf("%d",&booksn.id); p
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农业合作社土地租赁合同示例
- 矿山设施维护承包合同
- 新零售模式下的门店数字化改造升级方案
- 舞蹈学校舞蹈课程销售合同
- 酒店预订系统技术咨询与服务合同
- 办公设备转让合同
- 2024年度文旅项目土石方景观营造合同
- 2024年度特许经营合同许可范围和经营义务3篇
- 2024年度体育赛事赞助合同:某体育赛事主办方与赞助商之间的赞助事宜2篇
- 2024版仓储物流园区物业管理与仓储设施租赁及服务合同3篇
- 14S501-1 球墨铸铁单层井盖及踏步施工
- 停工窝工索赔案例
- Python数据科学方法与实践(山东联盟)智慧树知到答案章节测试2023年山东师范大学
- 阿里数字商业知识图谱构建及开放
- 土地增值税税源明细表(从事房地产开发的纳税人清算适用、从事房地产开发的纳税人按核定征收方式清算适用、纳税人整体转让在建工程适用)
- hsk5-成语学习知识
- 河道清理工程环境影响评价报告书
- GB/T 2831-2009光学零件的面形偏差
- GB/T 10433-2002电弧螺柱焊用圆柱头焊钉
- 收款账户变更通知函(4篇)
- 小学生金融与理财课程-课件
评论
0/150
提交评论