C语言程序设计基础课程设计.docx

上传人:b****2 文档编号:1055453 上传时间:2022-10-16 格式:DOCX 页数:29 大小:330.72KB
下载 相关 举报
C语言程序设计基础课程设计.docx_第1页
第1页 / 共29页
C语言程序设计基础课程设计.docx_第2页
第2页 / 共29页
C语言程序设计基础课程设计.docx_第3页
第3页 / 共29页
C语言程序设计基础课程设计.docx_第4页
第4页 / 共29页
C语言程序设计基础课程设计.docx_第5页
第5页 / 共29页
点击查看更多>>
下载资源
资源描述

C语言程序设计基础课程设计.docx

《C语言程序设计基础课程设计.docx》由会员分享,可在线阅读,更多相关《C语言程序设计基础课程设计.docx(29页珍藏版)》请在冰豆网上搜索。

C语言程序设计基础课程设计.docx

C语言程序设计基础课程设计

武汉工商学院

信息工程学院

 

项目名称:

图书信息管理系统

学生姓名:

袁智琴

学号:

15401023

班级:

15计科实验班

指导教师:

胡成松

 

2016年3月23日

1.实验的目的和意义1

1.1目的1

1.2意义1

2.系统功能的描述2

2.1实验功能设计2

2.2实验功能描述2

3.系统存储结构设计与描述5

N=(i-1);4.系统功能实现与算法描述5

4.1信息查询功能6

4.2信息排序功能6

4.3图书信息删除功能7

4.4图书信息修改功能8

5.系统性能测试10

5.1菜单函数的功能测试10

5.2录入函数的功能测试10

5.3浏览函数的功能测试11

5.4查询函数的功能测试12

5.5排序函数的功能测试13

5.6修改函数的功能实现14

5.7删除函数的功能测试14

5.8添加图书信息功能测试15

5.9结束函数的功能测试16

6.设计小结17

致谢18

参考文献19

附录20

1.实验的目的和意义

1.1目的

随着人们生活水平的日益提高,人们对文化的需求也越来越大。

在人们的业余生活中,越来越多的人乐于享受文字给生活带来的乐趣。

而图书也是学生的学习过程中必不可少的。

而本项目旨在研发一个图书馆的管理系统,实现图书馆的信息化管理。

在方便读者查询借阅图书的同时,方便图书管理员对图书进行管理。

对于用户来说,操作简便易行,本系统提供了按照isbn,书名,作者,出版单位,出版年份,价格6种方式的查询书目操作。

本系统提供添加书目,删除书目,编辑书目信息等操作,方便后台管理员对所有图书进行管理。

 

1.2意义

随着社会的发展,传统的图书管理方式已不再符合现代社会需求,相比传统繁琐复杂的图书借出与还入方式,用简单的C语言程序代码编写的图书管理系统就可以更简单的实现图书信息录入,修改,删除,查询和浏览以及保存等功能,让用户使用是更易上手,使得复杂且大量的图书管理操作更容易使用。

2.系统功能的描述

图书管理系统具有图书信息的录入保存,信息导入,浏览,查询和图书信息的排序,删除等功能。

2.1实验功能设计

图书信息管理系统开发

图书信息包括:

书名、作者名、ISBN号、出版单位、出版年份、价格等。

试设计一个图书信息管理系统,使之能提供以下功能:

(1)系统以菜单方式工作;

(2)图书信息录入功能(图书信息用文件保存);

(3)图书信息浏览功能;

(4)查询和排序功能:

(至少一种查询方式)

1)按书名查询;

2)按作者名查询;

3)按出版社查询;

4)按出版年份查询。

(5)修改图书信息:

对某图书信息进行修改

(6)删除图书:

将某图书的信息删除

(7)退出

根据题目所给问题,要求所编程序要实现以下功能:

图书信息录入模块的实现;

系统中文件的保存和读写功能的实现;

图书信息的浏览;

图书信息的查询。

分为按图书书名查询,按作者名查询,按isbn编号查询以及按出版单位查询。

图书信息按年份排序,修改的功能。

对某本图书的删除功能以及退出功能。

系统菜单的的设计。

对程序的设计和检测的功能。

2.2实验功能描述

程序运行以后就会显示菜单界面:

图书管理系统:

1.图书信息录入2.图书信息浏览3.图书信息查询4.图书信息排序5.修改图书信息6.删除图书7.退出系统

如下是功能模块:

图2-1功能模块图

(1)图书信息录入进入系统后会显示菜单界面,选择图书信息录入功能后会出现请输入需要录入信息的图书数量,从键盘输入需录入信息的图书数量后就开始录入图书信息,录入结束后会自动保存入已创建的文件里,然后会出现提示:

返回主菜单请选择1,退出请选择0,根据提示选择退出系统或返回主菜单。

(2)图书信息浏览功能进入系统后会显示菜单界面,根据菜单选择2图书信息浏览功能,然后就会依次显示出图书的书名,作者名,isbn编号,出版单位,出版年份和图书价格,若先前已经录入过图书信息则会依次显示出图书信息,若未录入过则会显示空白,结束后会出现返回主菜单或退出选项,根据提示进行退出或返回主菜单操作。

(3)图书信息查询功能进入主菜单后选择3信息查询功能,然后界面上会显示查询方式:

1按书名查询2按作者名查询3按isbn编号查询4按出版单位查询,根据选项选择查询方式。

若已找到此图书就会显示此图书的书名,作者名,isbn编号,出版单位,出版年份和价格;若未找到此图书,界面会显示未找到此图书的相关信息。

若要继续修改请按‘y’否则请按‘n’。

结束后会显示返回主菜单和退出系统选项,根据选项进行退出或返回主菜单操作。

(4)图书排序功能进入主菜单后选择4图书信息排序功能,菜单界面显示排序方式(从小到大):

1按作者名排序2按isbn编号查询3按出版年份查询,选择排序方式后开始排序操作,完成后显示出排序后所有的图书信息。

结束后会显示返回主菜单和退出系统选项,根据选项进行退出或返回主菜单操作。

(5)修改图书信息功能进入主菜单后选择5图书信息修改功能,菜单界面会显示“请输入你要修改的图书的书名或isbn编号”,若在已录入的图书信息中找到此图书,则会显示“已找到此图书的相关信息!

”,若未找到则会显示“未找到此书的相关信息!

”然后显示此书的书名,作者名,isbn编号,出版单位,出版年份,价格信息。

在完成此操作后界面会显示出一个选项菜单,根据选项选择需要修改的图书信息后根据提示输入修改后的图书信息,在完成修改后,会输出修改后的全部的图书信息。

若要继续修改请按y,结束修改请按n.结束后根据提示选择返回主菜单或者退出。

(6)删除图书功能进入主菜单候选择6删除图书功能,运行界面会显示出删除前已录入的所有图书信息,根据提示输入需要被删除的图书书名,若找到此图书则显示已找到此书的相关信息并输出其所有信息,若未找到则显示未找到此书的相关信息。

完成删除操作后,显示出删除后所有图书信息。

结束后根据提示选择退出系统或返回主菜单。

添加图书信息功能进入主菜单后选择信息添加功能,然后输入需要添加信息的图书数量,选择后依次输入图书的信息。

结束后若要继续添加请按‘y’,否则请按‘n’。

结束后若要返回主菜单请按‘y’,退出系统请按任意键。

(7)退出系统功能选择退出系统后,运行界面显示出“谢谢使用!

”后退出系统。

3.系统存储结构设计与描述

1)系统需要存储的信息包含图书书名、图书作者名、isbn编号、出版单位、出版年份、图书价格,其中图书书名、图书作者名、isbn编号、出版单位信息均使用字符数组类型存放,出版年份信息使用int类型存放,图书价格信息使用float类型存放;

2)系统设计的结构体定义如下:

structbook

{

charshuming[20];//图书书名

charname[20];//图书作者名

charisbn[20];//图书isbn编号

charchubandanwei[20];//出版单位

intyear;//出版年份

floatprize;//图书价格

}stu[M];

系统定义了一个M,己可录入的最大的信息量。

#defineM10000

3)保存函数save()将已录入的所有图书信息从内存保存到硬盘中保存在book.txt文本里。

for(i=0;i

fwrite(&stu[i],sizeof(structbook),1,fp);

fclose(fp);

4)导入函数load()将图书信息从硬盘导入到内存中以进行其他操作。

while(!

feof(fp))

{

fread(&stu[i],sizeof(structbook),1,fp);

i++;

}

fclose(fp);

N=(i-1);

4.系统功能实现与算法描述

4.1信息查询功能

运用for循环,若找到此书的相关信息就显示已经在到相关图书并输出该图书的相关信息,若未找到就能继续查找直到循环结束,若循环结束后还未找到相关图书就显示未找到相关图书。

结束后选择是否继续修改。

图4-1查询流程图

4.2信息排序功能

定义一个结构体中间变量,用冒泡排序两层for循环,第二层循环内加if判断语句,若顺序相反(从小到大排序)就进行变量之间的交换。

图4-2排序流程图

4.3图书信息删除功能

先查找要删除的图书信息,若找到后选择是否进行删除操作,若进行删除操作就用后一本图书的信息覆盖前一本图书信息,若不进行删除就退出,若未找到也退出程序。

图4-3删除流程图

 

4.4图书信息修改功能

先找到要修改的图书信息,然后选择要修改的图书信息类型,修改后进行保存,若要继续修改就按Y否则就按N结束。

图4-4修改流程图

5.系统性能测试

5.1菜单函数的功能测试

进入系统后显示菜单。

图5-1菜单功能测试图

5.2录入函数的功能测试

显示菜单后选择1图书信息录入功能,输入需要录入信息的图书数量,然后进行图书信息的录入。

如图5-2所示

图5-2录入功能测试图

5.3浏览函数的功能测试

显示菜单后选则2图书信息浏览功能,输出先前已经录入的图书信息。

图5-3浏览功能测试图

5.4查询函数的功能测试

显示菜单后选择图书信息查询功能,然后在四种查询方式中任选一种方式并输入序号,然后输入与序号对应的要查询的图书信息,若找到此图书会显示已找到此图书并输出该图书的相关信息,若未找到提示输入错误。

结束后若要继续查询请按‘y’,否则请按‘n’。

如图5-4-1示找到图书信息。

图5-4查询功能测试图

如图5-5示若输入错误则显示未找到相关书籍。

图5-5查询错误提示

5.5排序函数的功能测试

显示菜单后选择图书信息排序功能。

然后在按作者名排序,按isbn编号排序,按出版年份排序这三种排序方式中任选一种,然后输出排序后的所有图书信息(按从小到大的顺序)。

图5-6排序功能测试图

5.6修改函数的功能实现

显示菜单后选择图书信息修改功能,输入你要修改的图书的书名或isbn编号,若找到此书则显示已找到此书的相关信息并输出该图书的所有信息,否则则显示未找到此术的相关信息!

然后选择修改图书信息的类型,在输入修改后的图书信息,修改完成后输出所有的图书信息。

若要继续修改请按‘y’,结束修改请按‘n’。

如图所示

图5-7修改功能测试图

 

5.7删除函数的功能测试

显示菜单后选择图书信息删除功能,输出删除前所有的图书信息,然后输入需要删除信息的图书书名,若找到此书则显示已找到此书的相关信息,否则就显示未找到。

若确认删除就按Y否则就按N,删除完成后显示删除后所有的图书信息!

如图5-7-1所示

图5-8删除功能测试图

若输入错误则会提示,输入有误。

如下图所示

图5-9删除错误提示

5.8添加图书信息功能测试

显示菜单后选择图书信息添加功能,输入需要添加信息的图书数量,然后依次添加入信息。

如下图所示

图5—10信息添加功能测试

5.9结束函数的功能测试

显示菜单后选择退出功能,显示“谢谢使用!

”。

图5-10修改功能测试图

6.设计小结

用c语言编写的图书管理系统实现了图书信息的录入保存,导入浏览,查询,排序,删除,修改等功能,是图书管理操作的方便快捷化,是复杂的工作变得简单。

在编写图书管理系统代码的过程中,我遇到了很多问题:

1保存和导入函数的运用上存在很多问题,首先是对保存和导入函数的用法和理解含糊不清,其次就对何时需要调用保存和导入函数不太清楚。

在查阅一些书籍和案例后

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1