欢迎来到天天文库
浏览记录
ID:6654673
大小:237.00 KB
页数:23页
时间:2018-01-21
《软件工程导论之编码设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、软件工程导论题目:图书管理系统文档名称:编码设计班级:科技0801项目组长:唐子龙项目成员:唐子龙()朱磊()赵欣()刘华琛()编码设计1.根本任务23依据软件工程的基本原理,详细设计阶段的根本任务是确定应该怎样具体实现所要求的系统,也就是说,经过这个阶段的设计工作,应该得出对目标系统的精确描述,具体来说就是把经过总体设计得到的各个模块详细的加以描述。2、总体设计需求概述录入功能:输入相关数据浏览功能:以列表方式列出所有记录信息信息查询功能:根据书名匹配查询,并将查询结果列出借出归还功能:根据借出与归还的书籍信息修改相应数据插入与删除功能:插入一条新的图书信息,删除某图书的信息信息
2、的备份与读入功能:将输入文件进行备份和从指定文件读入数据设置访问权限功能:只有输入正确密码才可以进行操作否则无权操作系统结构图3、程序描述M1身份验证·功能:验证身份·性能:·输入项:预设密码·输出项:欢迎语句·算法:intkeyword=111,a;printf("Pleaseinputkeyword:");scanf("%d",&a);if(a!=keyword)exit(0);elseprintf("Welcome!");·测试要求:运行正常。23M2主菜单模块·功能:选择功能·性能:·输入项:数字0-9·输出项:对应功能项·算法:intDisplay_MainMenu()/
3、*显示菜单的函数*/{charx;do{system("cls");printf("************************");printf("1.CreateBookList");printf("2.DisplayAllBooks");printf("3.InsertaBookInformation");printf("4.DeleteaBook");printf("5.BorrowaBook");printf("6.ReturnaBook");printf("7.Query");printf("8.AddRecordsFromaFile
4、");printf("9.WritetoaFile");printf("0.Goodbye");printf("************************");printf("Pleasechoosefrom0-9:");printf("");x=getchar();}while(x<'0'
5、
6、x>'9');return(x-'0');}·测试要求:运行正常。M3插入模块·功能:插入新信息·性能:·输入项:书名数量·输出项:成功提示·算法:Book*Insert(Book*head,Book*s)/*插入结点的函数*/{Book*p0,*p1,*p2;p1
7、=head;p0=s;/*使p1指向第一个结点,p0指向要插入的结点*/if(head==NULL)/*原来的链表是空表*/{head=p0;p0->next=NULL;}/*使p0作为首结点*/while(strcmp(p0->Name,p1->Name)>0&&(p1->next!=NULL)){p2=p1;p1=p1->next;}if(strcmp(p0->Name,p1->Name)<=0)23{p0->next=p1;if(head==p1)head=p0;elsep2->next=p0;}else{p1->next=p0;p0->next=NULL;}return(h
8、ead);}Book*Insert_a_record(Book*head){Book*newrecord;newrecord=(Book*)malloc(LEN);/*动态分配存储空间*/scanf("%s%d",newrecord->Name,&newrecord->all);newrecord->borrow=0;newrecord->left=newrecord->all;head=Insert(head,newrecord);printf("Insertsuccessfully");/*输出插入成功的信息*/return(head);}·测试要求:运行正常。删除模块·功
9、能:删除信息·性能:·输入项:所删书名·输出项:成功提示·算法:Book*Delete(Book*head,char*name){Book*p1,*p2;if(head==NULL)printf("SorryNorecord!");p1=head;while(strcmp(p1->Name,name)!=0&&p1->next!=NULL)/*p1不是要找的结点,且后面还有结点*/{p2=p1;p1=p1->next;}/*p1后移一个结点*/if(strcmp(
此文档下载收益归作者所有