C语言程序课程设计图书管理系统方案

合集下载

c语言书店管理系统课程设计

c语言书店管理系统课程设计

c语言书店管理系统课程设计一、课程目标知识目标:1. 掌握C语言基础语法,如变量定义、数据类型、运算符、控制结构等;2. 学会使用数组、字符串、结构体等C语言高级特性;3. 理解并掌握文件操作在C语言中的应用;4. 了解书店管理系统的需求分析、功能模块划分及实现。

技能目标:1. 能够运用C语言编写简单的书店管理系统程序;2. 学会分析问题,运用所学知识解决问题;3. 掌握编程规范,养成良好的编程习惯;4. 提高团队协作能力,通过小组合作完成课程设计。

情感态度价值观目标:1. 培养学生对计算机编程的兴趣和热情;2. 培养学生的创新意识,鼓励他们勇于尝试新方法解决问题;3. 增强学生的责任感,让他们明白编程在生活中的应用和价值;4. 培养学生面对困难时的坚持和毅力,学会克服挫折。

课程性质:本课程为实践性课程,旨在培养学生的编程能力、分析问题和解决问题的能力。

学生特点:学生已经掌握了C语言的基础知识,具备一定的编程能力,但实际应用经验较少。

教学要求:结合实际应用,引导学生运用所学知识完成书店管理系统的设计与实现,注重培养学生的实践能力和团队协作能力。

通过本课程的学习,使学生能够将所学知识运用到实际项目中,提高编程水平。

二、教学内容1. C语言基础回顾:变量定义、数据类型、运算符、控制结构(选择、循环);2. 数组、字符串、结构体等高级特性及应用;3. 文件操作:文件的打开、读取、写入和关闭;4. 书店管理系统需求分析:系统功能模块划分、数据结构设计;5. 书店管理系统功能实现:用户界面设计、功能模块编程实现;- 用户注册与登录模块;- 图书信息管理模块;- 销售管理模块;- 库存管理模块;- 查询统计模块;6. 编程规范与调试技巧:代码风格、调试方法、性能优化;7. 团队协作与项目管理:分工合作、进度控制、问题解决;8. 课程总结与成果展示:项目演示、经验分享、总结反馈。

教学内容安排与进度:1. C语言基础回顾(1课时);2. 数组、字符串、结构体等高级特性及应用(2课时);3. 文件操作(1课时);4. 书店管理系统需求分析(1课时);5. 书店管理系统功能实现(6课时);6. 编程规范与调试技巧(1课时);7. 团队协作与项目管理(2课时);8. 课程总结与成果展示(1课时)。

图书管理系统的设计C课程设计

图书管理系统的设计C课程设计

图书管理系统的设计C 课程设计一、教学目标本课程的设计目标是使学生掌握图书管理系统的设计与实现。

具体目标如下:1.理解图书管理系统的需求和功能。

2.掌握常用的数据结构和算法,并能够应用于图书管理系统的设计。

3.了解数据库的基本概念,并能够使用数据库进行图书管理。

4.能够使用C语言进行程序设计,包括编码、调试和测试。

5.能够使用数据库管理系统进行数据的存储和管理。

情感态度价值观目标:1.培养学生对计算机科学和编程的兴趣和热情。

2.培养学生解决问题的能力和团队合作的精神。

二、教学内容教学内容将按照以下大纲进行:1.图书管理系统需求分析:介绍图书管理系统的功能和需求,包括图书的增删查改等操作。

2.数据结构的选择:介绍常用的数据结构,如数组、链表、树等,并分析其在图书管理系统中的应用。

3.算法的选择:介绍常用的算法,如搜索、排序等,并分析其在图书管理系统中的应用。

4.数据库的设计:介绍数据库的基本概念,并学习如何使用数据库管理系统进行数据的存储和管理。

5.图书管理系统的实现:使用C语言进行图书管理系统的编码、调试和测试。

三、教学方法将采用多种教学方法进行教学,以激发学生的学习兴趣和主动性:1.讲授法:用于讲解基本概念和理论知识。

2.案例分析法:通过分析实际案例,使学生更好地理解和应用所学知识。

3.实验法:通过实际操作和实验,使学生掌握图书管理系统的实现和测试。

四、教学资源将选择和准备以下教学资源:1.教材:选用《C程序设计》作为主教材,用于学习C语言编程基础。

2.参考书:选用《数据结构与算法分析》和《数据库原理》作为参考书,用于深入学习数据结构和算法以及数据库的知识。

3.多媒体资料:制作PPT和教学视频,用于讲解理论知识。

4.实验设备:准备计算机和数据库管理系统,用于实际操作和实验。

五、教学评估教学评估将采用多种方式进行,以全面反映学生的学习成果:1.平时表现:评估学生的课堂参与度、提问回答和小组讨论的表现,以考察学生的学习态度和积极性。

c图书管理系统课程设计

c图书管理系统课程设计

c 图书管理系统课程设计一、课程目标知识目标:1. 让学生理解图书管理系统的基本概念,掌握其主要功能模块和使用方法。

2. 使学生掌握数据库的基本操作,如创建、查询、更新和删除数据。

3. 帮助学生了解软件工程的基本原则,培养良好的编程习惯。

技能目标:1. 培养学生运用所学知识设计并实现一个简单的图书管理系统。

2. 提高学生使用数据库技术进行数据处理和分析的能力。

3. 培养学生运用软件工程方法进行问题分析和系统设计的能力。

情感态度价值观目标:1. 培养学生对计算机科学的兴趣和热情,激发学习动力。

2. 培养学生的团队协作意识,提高沟通与协作能力。

3. 培养学生严谨、认真的工作态度,树立良好的职业道德观念。

课程性质分析:本课程为实践性较强的学科,旨在帮助学生将所学理论知识应用于实际项目中,提高学生的动手能力和问题解决能力。

学生特点分析:学生具备一定的计算机基础和编程能力,对数据库和软件工程有一定了解,但实践经验不足。

教学要求:1. 结合实际案例,引导学生掌握图书管理系统的核心功能和关键技术。

2. 注重实践操作,让学生在实践中提高技能。

3. 强化团队合作,培养学生良好的沟通与协作能力。

4. 关注学生个体差异,提供有针对性的指导。

二、教学内容1. 理论知识:- 图书管理系统概述:介绍图书管理系统的基本概念、功能模块及其在实际应用中的作用。

- 数据库原理:讲解数据库的基本概念、关系型数据库的设计及SQL语言的使用。

- 软件工程:阐述软件工程的基本原则,如需求分析、系统设计、编码、测试等。

2. 实践操作:- 系统设计:指导学生进行图书管理系统的需求分析、功能设计、数据库设计等。

- 编程实现:教授学生运用编程语言(如Java、C#等)实现图书管理系统的核心功能。

- 系统测试:教授学生进行单元测试、集成测试和系统测试,确保系统稳定可靠。

3. 教学大纲:- 第一周:图书管理系统概述,数据库原理学习。

- 第二周:软件工程基本原理,需求分析和系统设计。

c图书管理系统课程设计

c图书管理系统课程设计

c图书管理系统课程设计一、教学目标本课程旨在让学生了解和掌握图书管理系统的基本原理和操作方法,培养学生运用计算机技术管理图书的能力。

具体目标如下:1.知识目标:使学生了解图书管理系统的起源、发展及其基本组成部分,掌握图书管理系统的主要功能和操作方法。

2.技能目标:培养学生能够熟练使用图书管理系统,进行图书的录入、查询、修改和删除等操作,并能进行简单的系统维护。

3.情感态度价值观目标:培养学生对图书管理工作的热爱和敬业精神,提高学生服务于社会、服务于他人的意识。

二、教学内容本课程的教学内容主要包括以下几个部分:1.图书管理系统的基本概念:介绍图书管理系统的发展历程、基本功能和组成部分。

2.图书管理系统的操作方法:讲解图书的录入、查询、修改和删除等基本操作,以及系统的维护和升级。

3.图书管理系统的应用案例:分析实际工作中的图书管理案例,让学生了解图书管理系统在实际工作中的应用。

4.图书管理系统的开发:介绍图书管理系统的开发流程,让学生了解图书管理系统的开发过程。

三、教学方法为了提高教学效果,本课程将采用以下几种教学方法:1.讲授法:通过讲解教材,使学生掌握图书管理系统的基本概念和原理。

2.案例分析法:分析实际工作中的图书管理案例,让学生了解图书管理系统的应用。

3.实验法:让学生亲自动手操作图书管理系统,提高学生运用所学知识解决实际问题的能力。

4.讨论法:学生进行分组讨论,培养学生的团队协作能力和解决问题的能力。

四、教学资源为了支持本课程的教学,我们将准备以下教学资源:1.教材:选用国内权威出版社出版的图书管理系统相关教材。

2.参考书:提供相关的参考书籍,丰富学生的知识体系。

3.多媒体资料:制作精美的PPT,辅助讲解和展示图书管理系统的操作界面及功能。

4.实验设备:准备计算机及相关设备,让学生进行实际操作。

五、教学评估为了全面、客观地评估学生的学习成果,本课程将采用以下几种评估方式:1.平时表现:通过观察学生在课堂上的参与程度、提问回答等情况,评估学生的学习态度和理解程度。

c语言课程设计报告图书管理系统

c语言课程设计报告图书管理系统

c语言课程设计报告图书管理系统一、教学目标本课程的目标是使学生掌握C语言的基本语法,熟悉图书管理系统的开发流程,培养学生运用C语言解决实际问题的能力。

具体目标如下:1.知识目标:–掌握C语言的基本语法和数据结构。

–理解图书管理系统的需求和设计原理。

2.技能目标:–能够使用C语言编写简单的程序。

–学会使用C语言实现图书管理系统的功能。

3.情感态度价值观目标:–培养学生的团队协作意识和沟通能力。

–增强学生对计算机科学和编程的兴趣和热情。

二、教学内容本课程的教学内容主要包括C语言的基本语法、数据结构以及图书管理系统的开发。

具体安排如下:1.C语言的基本语法:–变量和数据类型–运算符和表达式–函数和数组–指针和引用2.数据结构:3.图书管理系统的开发:–系统测试和优化三、教学方法本课程采用多种教学方法,以激发学生的学习兴趣和主动性。

具体方法如下:1.讲授法:用于讲解C语言的基本语法和数据结构。

2.案例分析法:通过分析具体的图书管理系统案例,使学生更好地理解系统设计和功能实现。

3.实验法:让学生动手编写程序,巩固所学知识,提高实际操作能力。

4.小组讨论法:鼓励学生分组讨论,培养团队协作意识和沟通能力。

四、教学资源本课程所需的教学资源包括:1.教材:《C语言程序设计》2.参考书:《C Primer Plus》、《数据结构与算法分析》3.多媒体资料:教学PPT、视频教程4.实验设备:计算机、网络设备以上教学资源将用于支持教学内容和教学方法的实施,丰富学生的学习体验。

五、教学评估本课程的评估方式包括平时表现、作业、考试等。

评估方式应客观、公正,能够全面反映学生的学习成果。

具体安排如下:1.平时表现:包括课堂参与度、提问回答、小组讨论等,占总评的20%。

2.作业:包括编程练习和理论作业,占总评的30%。

3.考试:包括期中和期末考试,占总评的50%。

期中和期末考试将涵盖C语言基本语法、数据结构以及图书管理系统的开发内容。

C语言课程设计-书店管理系统精选全文

C语言课程设计-书店管理系统精选全文

计算机程序设计(C语言)课程设计报告题目:图书管理系统学院:专业:班级:学号:姓名:指导教师:设计日期:2013年06月24日一、选题背景:设计一个图书管理系统,管理员通过登陆账号来进行下一步,使用错误账号和密码会被视为非法登陆。

图书信息包括:每种图书都有书名、ISBN、一名或多名作者(译者)、出版社、定价和内容简介等;读者信息包括:借书证记录有借阅者的姓名、密码、所在单位和类别等;读者凭借书证借书二、设计思想:(1)整个系统除了主函数外,另外还有各种功能子函数,利用无限次循环语句while()和选择语句swithch()实现各个子函数的调用,系统根据输入的数字选项来调用相应的函数,以实现相应的功能。

主要实现了图书的录入、存储、查询、添加、删除、修改、借书、还书等功能。

(2)、Cbook();这是一个指针函数,它主要实现了链表的创建,并且在创建过程中从文件读取信息到链表中,以用于后面其他函数的操作。

它返回的时一个单向链表的头。

其他函数调用时只需调用它返回的头即可。

(3)、mainmenu();、menu1();、glm enu();、cxmenu();、jhmenu();这五个函数时整个图书管理系统的全部菜单函数,mainmenu();为系统主界面,进入时可选择进入程序和退出程序。

menu1();为进程序时显示的功能菜单,在此菜单可以选择录入、保存图书信息,也可选择进入其他子系统。

glmenu();此菜单为进入图书管理系统的菜单,在此可以选择添加、删除、修改图书等操作。

cxmenu();为查询系统的菜单,在此可以选择按书名、编号、作者等方式进行查询图书。

jhmenu();为借书还书的子菜单,在此可以选择借书还书操作。

操作完成后按提示信息进行文件的保存操作。

三、程序流程图会员登陆系统系统管理界面收银系统管理系统报表系统退出系统四、主要解决问题的方法及技术关键通过自己定义的函数和声明一个结构,主要方法是先使用int函数定义,不同的选择进入不同的定义函数,通过for语句进行判断,然后使用heart数组的各种方式打开此文件,然后通过while函数和for函数关闭文件,在不同的取用数值里,分别使用for,while语句进行判断是否进行下条语句。

c语言图书借阅管理系统课程设计

c语言图书借阅管理系统课程设计

c语言图书借阅管理系统课程设计一、教学目标本课程的教学目标是使学生掌握C语言的基本语法和编程技巧,能够运用C语言设计并实现一个图书借阅管理系统。

具体分为以下三个部分:1.知识目标:学生需要掌握C语言的基本数据类型、运算符、控制结构、函数、数组和指针等概念和用法。

2.技能目标:学生能够运用C语言进行程序设计,具备解决实际问题的能力,包括设计系统架构、编写程序代码、调试程序等。

3.情感态度价值观目标:通过课程学习,培养学生对计算机科学的兴趣和热情,增强其创新意识和团队协作能力,使其认识到计算机技术在现代社会中的重要性和应用价值。

二、教学内容本课程的教学内容主要包括C语言的基本语法和编程技巧,以及图书借阅管理系统的具体实现。

具体安排如下:1.C语言基本语法:数据类型、运算符、控制结构、函数、数组和指针等。

2.编程技巧:变量定义与初始化、代码格式规范、注释的使用、模块化编程等。

3.图书借阅管理系统:系统架构设计、功能模块划分、数据结构设计、程序代码编写与调试等。

三、教学方法为了达到课程目标,我们将采用以下教学方法:1.讲授法:用于讲解C语言的基本语法和编程技巧,以及图书借阅管理系统的相关概念。

2.案例分析法:通过分析实际案例,使学生更好地理解和掌握C语言编程方法和管理系统的设计思路。

3.实验法:安排实验课,让学生亲自动手编写代码和调试程序,提高其实际操作能力。

4.讨论法:学生进行小组讨论,分享学习心得和经验,培养团队协作能力。

四、教学资源为了支持课程教学,我们将准备以下教学资源:1.教材:选用权威、实用的C语言教材,为学生提供系统的学习资料。

2.参考书:提供相关的C语言编程指南和图书管理方面的资料,丰富学生的知识储备。

3.多媒体资料:制作课件、视频等多媒体资料,增强课堂教学的趣味性和生动性。

4.实验设备:提供计算机实验室,让学生能够进行实际操作和程序调试。

五、教学评估本课程的教学评估将采用多元化的评估方式,包括平时表现、作业、考试等,以全面、客观、公正地评价学生的学习成果。

c语言课程设计图书管理系统

c语言课程设计图书管理系统

c语言课程设计图书管理系统一、教学目标本课程的教学目标是使学生掌握C语言基础知识,学会使用C语言进行程序设计,能够运用C语言实现图书管理系统的功能。

具体分为以下三个部分:1.知识目标:学生需要掌握C语言的基本语法、数据类型、运算符、控制结构、函数等基础知识,理解图书管理系统的业务流程和需求。

2.技能目标:学生能够运用C语言编写程序,实现图书管理系统的各个功能模块,如图书信息的添加、删除、修改和查询等。

3.情感态度价值观目标:培养学生对计算机编程的兴趣和热情,增强学生的自主学习能力和团队协作精神,使学生在解决实际问题时能够积极思考、勇于尝试。

二、教学内容本课程的教学内容分为五个部分:1.C语言基础知识:包括基本语法、数据类型、运算符、控制结构等。

2.函数与模块化编程:学习函数的定义、声明和调用,掌握模块化编程的方法和技巧。

3.图书管理系统需求分析:了解图书管理系统的业务流程,明确系统需求。

4.图书管理系统功能实现:使用C语言编写程序,实现图书管理系统的各个功能模块。

5.程序调试与优化:学习使用调试工具,掌握调试和优化程序的方法。

三、教学方法本课程采用多种教学方法,以激发学生的学习兴趣和主动性:1.讲授法:教师讲解C语言基本语法和概念,引导学生掌握知识要点。

2.案例分析法:分析实际编程案例,让学生学会将理论知识应用于实际问题。

3.实验法:学生动手编写程序,实现图书管理系统的功能,培养实际操作能力。

4.讨论法:分组讨论问题,培养学生的团队协作能力和解决问题的能力。

四、教学资源本课程所需教学资源包括:1.教材:《C程序设计语言》或《C语言入门教程》等。

2.参考书:《C语言编程实例解析》、《C语言常用算法解析》等。

3.多媒体资料:教学PPT、视频教程、编程案例等。

4.实验设备:计算机、编程环境(如Visual Studio、Code::Blocks等)。

5.在线资源:编程论坛、博客、教程等。

五、教学评估本课程的评估方式包括以下几个方面:1.平时表现:评估学生在课堂上的参与程度、提问回答情况、团队合作表现等,占总评的30%。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

C语言程序课程设计报告标题:图书管理系统专业:软件工程类:设计主题图书馆管理系统主要包括管理图书的库存信息,每本书的借阅信息,每个人的借阅信息。

每本书的库存信息包括数量、书名、作者、出版日期、金额、类别、总入库数量、当前库存、已借出图书数量等。

每本借书包括以下信息:编号、书名、金额、借书证号、借阅日期、到期日期、罚款金额等。

每个人的图书馆信息包括借书证号、班级、学号等。

该系统的功能包括以下几个方面:一、借阅资料管理要求对图书、期刊、报纸、期刊进行分类管理,这样操作会更加灵活方便。

可以随时添加、删除、修改、查询等相关资料。

b、借贷管理(1)借贷操作(2)还书操作(3)更新治疗提示:以上处理需要相互配合,通过编辑赔偿和违约金金额来完成图书借还业务的各种登记。

例如,读者在还书时,不仅要更新图书的库存信息,还要自动计算图书的罚款金额。

并显示读者当天到期未还图书的所有信息。

c、读者管理读者等级:对借阅的读者进行分类,比如可以分为教师和学生两类。

并定义每类读者可以借阅的图书数量及相关借阅时间等信息。

读者管理:可以录入读者信息,以及挂失或注销读者、查询等服务。

D.统计分析可以随时进行统计分析,及时了解当前的借阅情况和相关数据状态。

统计分析包括借阅列表、数据状态统计、借阅统计等功能分析,显示当日所有到期未还的图书信息。

e系统参数设置:您可以设置相关的系统服务器参数,如违约金金额、最大借用天数等。

根据题目分析这项工作分为六个模块。

1.图书数据2.借款人信息3.借用模块4.还书模块5.照看书籍6.查询模块模块一:书号,书名,作者,出版时间,价格,份数,页数。

模块二:单位、借阅书目、借阅时间模块3:输入书名、书号、借书证。

模块四:登记书号,还书,处理罚款。

模块5:管理书库中的书籍,将新书入库,删除旧书,堆栈查询模块6:图书查询。

数据测试源代码汉字菜单可以参照以下代码编写:#包含“stdio.h”。

主(){ char c;int I;做{clr SCR();for(I = 0;i < 80i++)printf(" * ");printf("\t 1:添加书籍\ n ");printf("\t 2:列出书籍\ n ");printf(" \ t 3:s reach books \ n ");printf("\t 4:借书\ n ");printf("\t 5:返回图书\ n ");printf("\t6:退出\n ")printf(" \ t请选择输入选项[1 \ \ 2 \ \ 3 \ \ 4 \ \ 5 \ \ 6]:\ n ");做{c = getchar();}while(c!='1'&&c!='2'&&c!='3'&&c!='4'&&c!='5'&&!='6');getchar();开关(c){事例“1”:输入();打破;案例“2”:del();打破;事例“3”:find();打破;case“4”:arrange();打破;事例“5”:right();打破;案例“6”:出口(0);}Printf("按任意键返回主菜单:\ n ");getchar();clr SCR();} while(1);}#include <stdio.h >定义图书结构*/结构书{int _ id#include <stdlib.h >#include <string.h >#定义借入1#定义NOBORROW 0/*//数字,唯一char _ name[32];//书的名称,不唯一int _ type//书的类型,不唯一int _ status//书的状态,借出/未借出int _ count//图书借出的次数struct Book * _ next//下一本书结构书* _ prev//前一本书};定义书籍类型*/操作目录提示*/操作目录提示1 */添加图书类型并显示用户信息*/添加图书状态并显示用户信息。

*/添加书籍,id会自动编号。

*/建立图书管理的链表*/释放链接列表*/打印图书信息*/列出所有注册的书籍*/借书,返回书的指针,否则返回NULL。

这本书可能不存在,或者已被借走。

*/不存在*/返回NULLif(p--> _ status!= 0)Book * borrow _ books(Book * Book _ head,int id){书* p =书_头;while (p){if (p->_id == id)打破;p = p--> _ next;}如果(!p)/*作废清单_书籍(Book* book_head){书* p =书_头;while (p){print _ book(p);p = p--> _ next;}}/*void print_book(Book* book){printf("id:%d,名称:%s,类型:%s,状态:%s,时间:%d \n ",图书->_id,图书-> _名称,图书_类型[图书-> _类型],book_status[book->_status],book-> _ count);}/*void自由列表(Book* book_head){书*p,* p1p = book _ headwhile(p){P1 = p--> _ next;免费(p);p = p1}}/*书*创建_列表(书*书_头){if (book_head){book _ head--> _ prev = book _ head;book _ head-> _ next = NULL;book _ head-> _ id = 1;book _ head-> _ count = 0;book _ head-> _ status = 0;}还书_头;}/*int add_books(Book* head,Book* book_for_add) {书* p =头;如果(!p)return-1;while(p--> _ next){p = p--> _ next;};p-> _ next = book _ for _ add;book _ for _ add--> id = p--> id+1;book _ for _ add--> _ prev = p;book _ for _ add--> _ next = NULL;book _ for _ add--> _ count = 0;book _ for _ add--> _ status = 0;返回0;};/*char book_status[][32] ={“诺博罗”,“借来的”,"",};/*char book_types[][32] ={"类型0 ",“类型1”,“类型2”,"",};/*char book_menu_sub[][32] ={“按名称搜索书籍”,“按类型搜索图书”,"",};/*char book_menu[][32] ={"添加书籍"、"列表书籍",“搜索书籍”,“借书”,“还书”,“退出”,"",};/*typedef结构书Book;/*/*/*已被借用。

*/返回NULLp-> _ status = 1;/*图书借阅登记*/p-> _ count++;/*借来的时间+1 */查找图书名称,并返回找到的编号。

可能会有重名,一本书可能会有很多本,但是ID是唯一的。

*/查找图书类型并返回找到的书号。

一个类型会有很多书。

*/还书。

如果正常返回,会返回书的指针。

否则,它将返回NULL */Book * return _ books(Book * Book _ head,int id){书* p =书_头;while (p){if (p->_id == id && p->_status!= 0){p-> _ status = 0;int search _ books _ by _ type(Book * Book _ head,int type) {int count = 0;书* p =书_头;while (p){if (p->_type == type){print _ book(p);++计数;}p = p--> _ next;}返回计数;}/*int search _ books _ by _ name(Book * Book _ head,char* name) {int count = 0;书* p =书_头;while (p){if(strcmp(p--> _ name,name) == 0){print _ book(p);++计数;}p = p--> _ next;}返回计数;}/*返回p;}/*/*图书归还登记*/打印操作选项*/main函数*/}}int main(void){char key = 0;char ss[128];int loop = 1;Book first_book、*pBooks、* pTmpstrcpy(first_book。

_name,“倪好”);第一本书。

_ type = 0;pBooks = create _ list(& first _ book);while(循环){print _ menu(book _ menu);gets(ss);key = ss[0]-48;if(key < 0 || key > 6)printf("错误输入!\ n ");其他printf("INPUT:%d\n ",key);开关(钥匙){案例1: //添加书籍pTmp =(Book *)malloc(sizeof(Book));中频(pTmp){printf("Add_Book输入名称:");gets(ss);strncpy(pTmp--> _ name,ss,31);print _ menu(book _ types);gets(ss);key = ss[0]-48;if(key < = 0 | | key >(sizeof(book _ types)/32)) key = 1;pTmp--> _ type = key-1;add_books(pBooks,pTmp);}打破;案例2: //列出书籍list _ books(pBooks);打破;案例3: //搜索书籍print _ menu(book _ menu _ sub);gets(ss);key = ss[0]-48;printf("INPUT:%d\n ",key);开关(钥匙){案例1: //按名称搜索书籍printf("输入图书名称:");gets(ss);key = search _ books _ by _ name(pBooks,ss);if(key == 0)printf("没有找到!\ n ");案例2: //按类型搜索图书print _ menu(book _ types);gets(ss);key = ss[0]-48;key = search _ books _ by _ type(pBooks,key-1);if(key == 0)printf("没有找到!\ n ");默认值:打破;}打破;案例四://借书printf("借书,输入图书id:");gets(ss);key = atoi(ss);pTmp = borrow_books(pBooks,key);如果(!pTmp)printf("借书失败:%d\n ",key);其他{printf("借书成功!\ n ");print _ book(pTmp);}打破;案例5: //归还图书printf("归还图书,输入图书id:");gets(ss);key = atoi(ss);pTmp = return_books(pBooks,key);如果(!pTmp)printf("还书失败:%d\n ",key);其他{printf("还书成功!\ n ");print _ book(pTmp);}打破;案例6: //退出loop = 0;打破;默认值:打破;}printf("-pause-");gets(ss);}free _ list(pBooks);返回0;void print_menu(char menus[][32]){int no = 0;printf(" \ n请选择ID,如1或2..\ n ");while (strlen(menus[no])){printf("%d \t%s\n ",no+1,menus[no]);++否;}printf(" OPTION(");while(否){printf("/%d ",no-);}printf("):);}/*打破;}p = p--> _ next;}返回p;}/*。

相关文档
最新文档