c语言图书馆管理系统课程设计报告_图书管理系统课程设计代码

c语言图书馆管理系统课程设计报告_图书管理系统课程设计代码C语言课程设计报告第第PAGE1页《程序设计语言-C》课程设计报告题目:图书管理系统班级:学号:姓名:2016年5月12日目录程序总体功能新增功能函数调用关系主要算法流程图排序算法流程图插入算法流程图过程难点及解决方法附录:源程序一:程序总体功能本图书管理系统可以实现图书管理的基本功能,包括图书信息的录入、输出、排序、删除、查找及批量导入/导出等。图书属性信息包括书号、书名、第一作者、…


Jetbrains全系列IDE稳定放心使用

C语言课程设计报告

第

第 PAGE 1 页

《程序设计语言-C》

课程设计报告

题目:图书管理系统

班级:

学号:

姓名:

2016年5月12日

目录

程序总体功能

新增功能

函数调用关系

主要算法流程图

排序算法流程图

插入算法流程图

过程难点及解决方法

附录:源程序

一:程序总体功能

本图书管理系统可以实现图书管理的基本功能,包括图书信息的录入、输出、排序、删除、查找及批量导入/导出等。图书属性信息包括书号、书名、第一作者、版次、出版年信息。

二:新增功能

数据校验功能:即在程序运行之前对输入数据的有效性进行判断,若输入数据不合逻辑则输出“数据输入有误,请核实后再输”不再执行后续程序,以此增加程序运行的效率。在本课程设计的删除记录功能中,按照要求输入要删除图书的书名后要接着输入书号来删除图书,若所输入书号不在正确书号范围内(书号输入错误),将直接终止程序,不再执行后续的删除程序。

三:函数调用关系

函数说明:

0.退出系统

1.数据输入函数:int Input(Bookinfo books[],int n)

2.数据输出函数:void Display(Bookinfo books[],int n)

3.删除记录函数(1):int Delete(Bookinfo books[],int n,char *book)

删除记录函数(2):int Delete_a_record(Bookinfo books[],int n)

4.排序函数:void Sort_by_name(Bookinfo books[],int n)

5.有序插入函数(1):int Insert(Bookinfo books[],int n, Bookinfo *s)

有序插入函数(2):int Insert_a_record(Bookinfo books[],int n)

数据查询函数(1):int Query(Bookinfo books[],int n,char *book)

数据查询函数(2):void Query_a_record(Bookinfo books[],int n)

从文件导入数据函数:int AddfromText(Bookinfo books[],int n)

记录数据写入文件函数:void WritetoText(Bookinfo books[],int n)

主菜单函数:int menu_select()

主函数:void main()

函数调用关系:(箭头指向被调用函数)

数据输入函数11

数据输入函数1

主函数10

主函数10

数据输出函数22

数据输出函数2

循环调用

循环调用

删除记录函数3(1)

删除记录函数3(1)

删除记录函数3(2)

排序函数4

排序函数4

主菜单函数9有序插入函数5

主菜单函数9

有序插入函数5(1)

有序插入函数5(2)

数据查询函数6(

数据查询函数6(1)

数据查询函数6(2)

从文件导入数据函数7

从文件导入数据函数7

将记录数据写入文件函数8

将记录数据写入文件函数8

8

退出系统

0

四:主要算法流程图

排序算法(数组按书名升序排序)

已有结构体数组Bookinfo books[]及数组元素个数n;

定义整型量i,j,p;

定义结构体变量 l;

开始

i=0; j=0;p=0;

否

i

是

p=i

j=i+1

否 j

是

strcmp(books[j].book,books[p].book)=-1

是

否p=j

否

j=j+1

否

p≠ii=i+1

是

l=books[p]

books[p]=books[i]

books[i]=l

结束

插入算法(输入图书信息,按书名有序插入)

已有结构体数组Bookinfo books[]及数组元素个数n;

(1)输入待插入的图书信息,调用Insert函数

开始

Bookinf

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/183216.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • html清空所有cookie,document.cookie使用详解

    html清空所有cookie,document.cookie使用详解概念相关:cookie是存于用户硬盘上的一个文件,对应一个域名,当浏览器再次访问这个域名时,便使用这个cookie。cookie可以跨越一个域名下的多个网页,但不能跨越多个域名使用。cookie是浏览器相关的。即使访问的是同一个页面,不同浏览器之间所保存的cookie也是不能互相访问的。cookie安全性不够高。所有的cookie都是以纯文本的形式记录于文件中,因此如果要保存用户名密码等信息…

    2022年7月11日
  • 客户端是移动端吗_谈单的技巧

    客户端是移动端吗_谈单的技巧1、百度开放平台选择开发者服务申请应用2、zai

    2022年10月8日
  • 经典SQL Server语句大全(超详细)

    经典SQL Server语句大全(超详细)转载自:https://www.2cto.com/database/201801/712172.html 经典SQL语句大全一、基础1、说明:创建数据库CREATEDATABASEdatabase-name2、说明:删除数据库dropdatabasedbname3、说明:备份sqlserver—创建备份数据的deviceUSEmaste…

    2022年5月8日
  • python实现Lasso回归

    python实现Lasso回归Lasso原理Lasso与弹性拟合比较python实现importnumpyasnpimportmatplotlib.pyplotaspltfromsklearn.metricsimportr2_score#defmain():#产生一些稀疏数据np.random.seed(42)n_samples,n_features=50,200X=np…

    2022年6月8日
  • 情商的研究

    情商EQ认识与提高情商(情绪、意志、性格、行为习惯组成的商数)情商(EmotionalQuotient)通常是指情绪商数,简称EQ,主要是指人在情绪、意志、耐受挫折等方面的品质,其包括导商(LQ)等。总的来讲,人与人之间的情商并无明显的先天差别,更多与后天的培养息息相关。它是近年来心理学家们提出的与智商相对应的概念。从最简单的层次上下定义,提高情商是把不能控制情绪的部分变为可以…

    2022年4月9日
  • request对象[通俗易懂]

    request对象[通俗易懂]request对象request对象封装了由客户端生成的HTTP请求的所有细节,主要包括HTTP头信息、系统信息、请求方式和请求参数等。通过request对象提供的相应方法可以处理客户端浏览器提交的

    2022年7月2日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号