《C语言程序设计 图书馆管理系统计算机NET计算机.NET.pdf》由会员分享,可在线阅读,更多相关《C语言程序设计 图书馆管理系统计算机NET计算机.NET.pdf(26页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、C语言程序设计 图书馆管理系统 1/26 题 目:图书馆管理系统 院 系:信息科技学院 专 业:姓 名:学 号:指导教师:日 期:2015 年 7 月 15日 桂林电子科技大学信息科技学院 实 训 报 告 C语言程序设计 图书馆管理系统 2/26 目 录 1 问题定义 =1 2 系统设计 -5 21 总体设计 -5 22 详细设计 -6 2.2.1 数据结构设计 -6 2.2.2 主控流程 -8 2.2.3 增加信息模块 -7 2.2.4 查找信息模块 -7 2.2.7 删除信息模块 -7 2.2 8 修改信息模块 -7 2.2.8 数据功能描述 -7 3 系统实现 =2 3.1 编码 -8
2、3.1.1 程序预处理 -9 3.1.2 主函数 main()-9 3.1.3 主菜单界面 -11 3.1.7 增加图书信息 -14 3.1.8 查询图书信息 -14 3.1.9 删除图书信息 -15 3.2.0 修改图书信息 -15 桂林电子科技大学信息科技学院语言程序设计图书馆管理系统目录问题定义系统设计总体设计详细设计数据结构设计主控流程增加信息模块查找信息模块删除信息模块修改信息模块数据功能描述系统实现编码程序预处理主函数主菜测试归纳总结开发经验实训中遇到的问题与解决方法设计中的不足之处感想和心得体会参考资料前言课程设计环节是应用型本科院校非常重要的一个教学环节是学完一门课后应用本课知
3、识与以前的知识积累而进行的综合性开放性的识创新能力团队精神等综合素质培养学生的设计能力和解决实际问题的能力语言由于其强大的功能丰富的表达能力高的代码良好的移植性和灵活性自年问世以来经久不衰即使现在出现了面向对象的语言程序设计图书馆管理系统程序C语言程序设计 图书馆管理系统 3/26 3.2 测试与调试 -13 3.2.1 概述 -14 3.2.2 程序测试 -14 5 归纳总结 =3 5.1 开发经验 -16 5.2 实训中遇到的问题与解决方法-16 5.3 设计中的不足之处 -16 5.4 感想和心得体会 -16 6 参考资料 =16 前 言 课程设计环节是应用型本科院校非常重要的一个教学环
4、节,是学完一门课后应用本课知识与以前的知识积累而进行的综合性、开放性的训练。通过课程设计,不仅能够使学生得到系统的技能训练,巩固和加强所学得专业理论知识,而且能够培养学生工程意识、创新能力、团队精神等综合素质,培养学生的设计能力和解决实际问题的能力。C语言由于其强大的功能,丰富的表达能力,高效的代码,良好的移植性和灵活性,自 1972 年问世以来,经久不衰,即使现在出现了面向对象的桂林电子科技大学信息科技学院语言程序设计图书馆管理系统目录问题定义系统设计总体设计详细设计数据结构设计主控流程增加信息模块查找信息模块删除信息模块修改信息模块数据功能描述系统实现编码程序预处理主函数主菜测试归纳总结开
5、发经验实训中遇到的问题与解决方法设计中的不足之处感想和心得体会参考资料前言课程设计环节是应用型本科院校非常重要的一个教学环节是学完一门课后应用本课知识与以前的知识积累而进行的综合性开放性的识创新能力团队精神等综合素质培养学生的设计能力和解决实际问题的能力语言由于其强大的功能丰富的表达能力高的代码良好的移植性和灵活性自年问世以来经久不衰即使现在出现了面向对象的语言程序设计图书馆管理系统程序C语言程序设计 图书馆管理系统 4/26 程序设计方法和开发工具,但它仍然是人们学习程序设计的首选语言,用它训练和提高编程技术,以与开发应用程序等。我们通过C语言程序设计这门课程的学习,已经能编写解决小问题的程
6、序,对程序的开发也有了初步的认识,还掌握了 C 语言的基本语法,这一过程确确实实令我们感到欣喜,有点计算机可以完成自我任务的成就感。但是,对于程序设计而言,学习 C 的步伐不应该停留于此。我们最终的目的应该是掌握开发大型综合程序的方法,即遵循软件工程的开发步骤和结构化程序设计思想,用 C 语言开发出解决复杂问题的大型综合程序。可是对于多数学生来说,学习了 C语言后,除了应付各种考试之外,别无它用,对 Turbo C 语言丰富的函数知之甚少,加上 DOS环境所限,因而对C语言兴趣不大,也感到 C语言比较难以掌握。本实训就是为了让学生在学完 C语言后进一步了解 C语言的知识,掌握 C语言在软件开发
7、方面的使用方法,希望通过此次实训,不仅能提高学生学习 C语言的兴趣,更为今后学习其它专业知识与开发程序打下坚实的基础。本指导书中有些内容借鉴了互联网上相关程序的设计思想,在此对相关者表示衷心的感谢。由于时间、经验与水平的原因,不当、不足之处,请大家提出宝贵意见。编者桂林电子科技大学信息科技学院语言程序设计图书馆管理系统目录问题定义系统设计总体设计详细设计数据结构设计主控流程增加信息模块查找信息模块删除信息模块修改信息模块数据功能描述系统实现编码程序预处理主函数主菜测试归纳总结开发经验实训中遇到的问题与解决方法设计中的不足之处感想和心得体会参考资料前言课程设计环节是应用型本科院校非常重要的一个教
8、学环节是学完一门课后应用本课知识与以前的知识积累而进行的综合性开放性的识创新能力团队精神等综合素质培养学生的设计能力和解决实际问题的能力语言由于其强大的功能丰富的表达能力高的代码良好的移植性和灵活性自年问世以来经久不衰即使现在出现了面向对象的语言程序设计图书馆管理系统程序C语言程序设计 图书馆管理系统 5/26 图书馆管理系统 一 实训目的:1.巩固 C语言的三种基本结构、数组、函数调用的基本知识;2.掌握利用 C语言编写程序的基本方法,提高 C语言编程技巧,培养分析问题、解决问题的能力;3.熟练掌握 C语言的编译、调用方法。二 实验内容 1、问题定义 创建一个图书馆管理系统。假设系统中每本图
9、书只包括图书名字、图书书号、图书出版社、图书作者等信息。程序的运行效果如图 1.1 所示,选择任意菜单中的数字,实现相应功能。主菜单 增加图书信息 查找图书信息 修改图书信息 退出图书管理 删除图书信息 桂林电子科技大学信息科技学院语言程序设计图书馆管理系统目录问题定义系统设计总体设计详细设计数据结构设计主控流程增加信息模块查找信息模块删除信息模块修改信息模块数据功能描述系统实现编码程序预处理主函数主菜测试归纳总结开发经验实训中遇到的问题与解决方法设计中的不足之处感想和心得体会参考资料前言课程设计环节是应用型本科院校非常重要的一个教学环节是学完一门课后应用本课知识与以前的知识积累而进行的综合性
10、开放性的识创新能力团队精神等综合素质培养学生的设计能力和解决实际问题的能力语言由于其强大的功能丰富的表达能力高的代码良好的移植性和灵活性自年问世以来经久不衰即使现在出现了面向对象的语言程序设计图书馆管理系统程序C语言程序设计 图书馆管理系统 6/26 图 1.1 图书管理系统功能需求 在问题定义阶段要考虑题目的可行性和需求分析,接下来进入开发阶段,完成系统设计和系统实现的任务。2.系统设计 2.1 总体设计 采用模块化的程序设计方法,即将较大的任务按照一定的原则分为一个个较小的任务,然后分别设计各个小任务。需要注意的是划分出来的模块应该相对独立但又相关,且容易理解。可以用模块化层次结构图(即模
11、块图)来分析其任务的划分,一般从上到下进行,最上面一层是主模块,下面各层是其上一层模块的逐步细化描述。桂林电子科技大学信息科技学院语言程序设计图书馆管理系统目录问题定义系统设计总体设计详细设计数据结构设计主控流程增加信息模块查找信息模块删除信息模块修改信息模块数据功能描述系统实现编码程序预处理主函数主菜测试归纳总结开发经验实训中遇到的问题与解决方法设计中的不足之处感想和心得体会参考资料前言课程设计环节是应用型本科院校非常重要的一个教学环节是学完一门课后应用本课知识与以前的知识积累而进行的综合性开放性的识创新能力团队精神等综合素质培养学生的设计能力和解决实际问题的能力语言由于其强大的功能丰富的表
12、达能力高的代码良好的移植性和灵活性自年问世以来经久不衰即使现在出现了面向对象的语言程序设计图书馆管理系统程序C语言程序设计 图书馆管理系统 7/26 本图书管理系统采用了数组来实现,如下图 1.2 所示,它由五大功能模块组成:增加图书信息模块。通过输入图书的书名、书号、出版社、作者来实现增加信息。查找图书信息模块。根据增加的图书的书名来查找图书的信息。删除图书信息模块。根据增加的图书信息记录通过查找定位找到信息进行删除。修改图书信息模块。根据增加的图书信息记录通过查找找到该书信息进行修改。2.2 详细设计 桂林电子科技大学信息科技学院语言程序设计图书馆管理系统目录问题定义系统设计总体设计详细设
13、计数据结构设计主控流程增加信息模块查找信息模块删除信息模块修改信息模块数据功能描述系统实现编码程序预处理主函数主菜测试归纳总结开发经验实训中遇到的问题与解决方法设计中的不足之处感想和心得体会参考资料前言课程设计环节是应用型本科院校非常重要的一个教学环节是学完一门课后应用本课知识与以前的知识积累而进行的综合性开放性的识创新能力团队精神等综合素质培养学生的设计能力和解决实际问题的能力语言由于其强大的功能丰富的表达能力高的代码良好的移植性和灵活性自年问世以来经久不衰即使现在出现了面向对象的语言程序设计图书馆管理系统程序C语言程序设计 图书馆管理系统 8/26 2.2.1 数据结构设计 图书馆信息结构
14、体 结构体 struct book将用于储存图书的基本信息,它将作为文件的数据域。Struct book /*定义结构体*/char Name20;/*书名 */char Number20;/*书号 */char publish20;/*出版社 */char author10;/*作者 */book500;这样就定义了一个数组的结构 2.2.2 主控 main()函数执行流程 2.2.3 增加信息模块:主要实现图书信息的增加功能。2.2.4 查找信息模块:主要实现图书查找书籍的功能。2.2.5 删除信息模块:主要实现图书删除图书记录的功能 桂林电子科技大学信息科技学院语言程序设计图书馆管理系统
15、目录问题定义系统设计总体设计详细设计数据结构设计主控流程增加信息模块查找信息模块删除信息模块修改信息模块数据功能描述系统实现编码程序预处理主函数主菜测试归纳总结开发经验实训中遇到的问题与解决方法设计中的不足之处感想和心得体会参考资料前言课程设计环节是应用型本科院校非常重要的一个教学环节是学完一门课后应用本课知识与以前的知识积累而进行的综合性开放性的识创新能力团队精神等综合素质培养学生的设计能力和解决实际问题的能力语言由于其强大的功能丰富的表达能力高的代码良好的移植性和灵活性自年问世以来经久不衰即使现在出现了面向对象的语言程序设计图书馆管理系统程序C语言程序设计 图书馆管理系统 9/26 2.2
16、.6 修改信息模块:主要实现修改增加后的图书信息功能。2.2.7 函数功能述 add()函数原型:void add();add()函数用于在增加图书信息的功能。chazhao()函数原型:chazhao();chazhao()函数用于在查找图书信息的功能。del()函数原型:del();del()函数用于在删除图书信息的功能。xiugai()原型函数:xiugai();xiugai()函数用于在修改图书信息的功能。主函数 main()整个成绩管理系统控制部分。桂林电子科技大学信息科技学院语言程序设计图书馆管理系统目录问题定义系统设计总体设计详细设计数据结构设计主控流程增加信息模块查找信息模块删
17、除信息模块修改信息模块数据功能描述系统实现编码程序预处理主函数主菜测试归纳总结开发经验实训中遇到的问题与解决方法设计中的不足之处感想和心得体会参考资料前言课程设计环节是应用型本科院校非常重要的一个教学环节是学完一门课后应用本课知识与以前的知识积累而进行的综合性开放性的识创新能力团队精神等综合素质培养学生的设计能力和解决实际问题的能力语言由于其强大的功能丰富的表达能力高的代码良好的移植性和灵活性自年问世以来经久不衰即使现在出现了面向对象的语言程序设计图书馆管理系统程序C语言程序设计 图书馆管理系统 10/26 void main()/*整个图书管理系统控制部分*/int i;do/*控制返回菜单
18、*/Menu();printf(请输入要实现的功能);scanf(%d,&i);if(i=0)/*请输入 0 到 4 之间的数字*/switch(i)case 1:add();break;case 2:chazhao();break;case 3:del();break;case 4:xiugai();break;case 0:exit(0);break;else printf(对不起,请重新输入并按回车确定nn);桂林电子科技大学信息科技学院语言程序设计图书馆管理系统目录问题定义系统设计总体设计详细设计数据结构设计主控流程增加信息模块查找信息模块删除信息模块修改信息模块数据功能描述系统实现编
19、码程序预处理主函数主菜测试归纳总结开发经验实训中遇到的问题与解决方法设计中的不足之处感想和心得体会参考资料前言课程设计环节是应用型本科院校非常重要的一个教学环节是学完一门课后应用本课知识与以前的知识积累而进行的综合性开放性的识创新能力团队精神等综合素质培养学生的设计能力和解决实际问题的能力语言由于其强大的功能丰富的表达能力高的代码良好的移植性和灵活性自年问世以来经久不衰即使现在出现了面向对象的语言程序设计图书馆管理系统程序C语言程序设计 图书馆管理系统 11/26 while(1);注:图书馆信息管理系统的控制部分。3、系统实现 31 编码 3.1.1 程序预处理 包括定义结构体、常量和变量、
20、声明部分,并对它们进行初始化工作。#include /*标准函数输入输出函数库*/#include /*标准函数库*/#include /*字符串函数库*/*TTTTTTTTTTTTT函数声明部分TTTTTTTTTTTTTT*/void add();/*增加*/void chazhao();/*查找*/void del();/*删除*/桂林电子科技大学信息科技学院语言程序设计图书馆管理系统目录问题定义系统设计总体设计详细设计数据结构设计主控流程增加信息模块查找信息模块删除信息模块修改信息模块数据功能描述系统实现编码程序预处理主函数主菜测试归纳总结开发经验实训中遇到的问题与解决方法设计中的不足之
21、处感想和心得体会参考资料前言课程设计环节是应用型本科院校非常重要的一个教学环节是学完一门课后应用本课知识与以前的知识积累而进行的综合性开放性的识创新能力团队精神等综合素质培养学生的设计能力和解决实际问题的能力语言由于其强大的功能丰富的表达能力高的代码良好的移植性和灵活性自年问世以来经久不衰即使现在出现了面向对象的语言程序设计图书馆管理系统程序C语言程序设计 图书馆管理系统 12/26 void xiugai();/*修改*/void exti();/*退出*/void Menu();/*菜单*/*TTTTTTTTTT定义结构体部分TTTTTTTTTTTTTTT*/struct book /*定
22、义结构体*/char Name20;/*书名 */char Number20;/*书号 */char publish20;/*出版社 */char author10;/*作者 */book500;#include /*标准函数输入输出函数库*/#include /*标准函数库*/#include /*字符串函数库*/桂林电子科技大学信息科技学院语言程序设计图书馆管理系统目录问题定义系统设计总体设计详细设计数据结构设计主控流程增加信息模块查找信息模块删除信息模块修改信息模块数据功能描述系统实现编码程序预处理主函数主菜测试归纳总结开发经验实训中遇到的问题与解决方法设计中的不足之处感想和心得体会参考
23、资料前言课程设计环节是应用型本科院校非常重要的一个教学环节是学完一门课后应用本课知识与以前的知识积累而进行的综合性开放性的识创新能力团队精神等综合素质培养学生的设计能力和解决实际问题的能力语言由于其强大的功能丰富的表达能力高的代码良好的移植性和灵活性自年问世以来经久不衰即使现在出现了面向对象的语言程序设计图书馆管理系统程序C语言程序设计 图书馆管理系统 13/26 /*TTTTTTTTTTTTT函数声明部分TTTTTTTTTTTTTT*/void add();/*增加*/void chazhao();/*查找*/void del();/*删除*/void xiugai();/*修改*/void
24、 exti();/*退出*/void Menu();/*菜单*/*TTTTTTTTTT定义结构体部分TTTTTTTTTTTTTTT*/struct book /*定义结构体*/char Name20;/*书名 */char Number20;/*书号 */char publish20;/*出版社 */char author10;/*作者 */book500;桂林电子科技大学信息科技学院语言程序设计图书馆管理系统目录问题定义系统设计总体设计详细设计数据结构设计主控流程增加信息模块查找信息模块删除信息模块修改信息模块数据功能描述系统实现编码程序预处理主函数主菜测试归纳总结开发经验实训中遇到的问题与
25、解决方法设计中的不足之处感想和心得体会参考资料前言课程设计环节是应用型本科院校非常重要的一个教学环节是学完一门课后应用本课知识与以前的知识积累而进行的综合性开放性的识创新能力团队精神等综合素质培养学生的设计能力和解决实际问题的能力语言由于其强大的功能丰富的表达能力高的代码良好的移植性和灵活性自年问世以来经久不衰即使现在出现了面向对象的语言程序设计图书馆管理系统程序C语言程序设计 图书馆管理系统 14/26 3.1.2 主函数 main()main()函数主要实现了对整个程序的运行控制,以与相关功能模块的调用。void main()/*整个图书管理系统控制部分*/int i;do/*控制返回菜单
26、*/Menu();printf(请输入要实现的功能);scanf(%d,&i);if(i=0)/*请输入 0 到 4 之间的数字*/switch(i)case 1:add();break;case 2:chazhao();break;case 3:del();break;case 4:xiugai();break;case 0:exit(0);break;桂林电子科技大学信息科技学院语言程序设计图书馆管理系统目录问题定义系统设计总体设计详细设计数据结构设计主控流程增加信息模块查找信息模块删除信息模块修改信息模块数据功能描述系统实现编码程序预处理主函数主菜测试归纳总结开发经验实训中遇到的问题与解
27、决方法设计中的不足之处感想和心得体会参考资料前言课程设计环节是应用型本科院校非常重要的一个教学环节是学完一门课后应用本课知识与以前的知识积累而进行的综合性开放性的识创新能力团队精神等综合素质培养学生的设计能力和解决实际问题的能力语言由于其强大的功能丰富的表达能力高的代码良好的移植性和灵活性自年问世以来经久不衰即使现在出现了面向对象的语言程序设计图书馆管理系统程序C语言程序设计 图书馆管理系统 15/26 else printf(对不起,请重新输入并按回车确定nn);while(1);3.1.3 主菜单界面 printf(欢迎使用图书管理系统n);printf(菜单n);printf(n);pr
28、intf(按 1:增 加 图 书 信 息 n);printf(n);printf(n);桂林电子科技大学信息科技学院语言程序设计图书馆管理系统目录问题定义系统设计总体设计详细设计数据结构设计主控流程增加信息模块查找信息模块删除信息模块修改信息模块数据功能描述系统实现编码程序预处理主函数主菜测试归纳总结开发经验实训中遇到的问题与解决方法设计中的不足之处感想和心得体会参考资料前言课程设计环节是应用型本科院校非常重要的一个教学环节是学完一门课后应用本课知识与以前的知识积累而进行的综合性开放性的识创新能力团队精神等综合素质培养学生的设计能力和解决实际问题的能力语言由于其强大的功能丰富的表达能力高的代码
29、良好的移植性和灵活性自年问世以来经久不衰即使现在出现了面向对象的语言程序设计图书馆管理系统程序C语言程序设计 图书馆管理系统 16/26 printf(按 2:查 找 图 书 信 息 n);printf(n);printf(n);printf(按 3:删 除 图 书 信 息 n);printf(n);printf(n);printf(按 4:修 改 图 书 信 息 n);printf(n);printf(n);printf(按 0:退 出 图 书 管 理 n);printf(n);桂林电子科技大学信息科技学院语言程序设计图书馆管理系统目录问题定义系统设计总体设计详细设计数据结构设计主控流程增加
30、信息模块查找信息模块删除信息模块修改信息模块数据功能描述系统实现编码程序预处理主函数主菜测试归纳总结开发经验实训中遇到的问题与解决方法设计中的不足之处感想和心得体会参考资料前言课程设计环节是应用型本科院校非常重要的一个教学环节是学完一门课后应用本课知识与以前的知识积累而进行的综合性开放性的识创新能力团队精神等综合素质培养学生的设计能力和解决实际问题的能力语言由于其强大的功能丰富的表达能力高的代码良好的移植性和灵活性自年问世以来经久不衰即使现在出现了面向对象的语言程序设计图书馆管理系统程序C语言程序设计 图书馆管理系统 17/26 printf(请 选 择 你 需 要 的 操 作n);print
31、f(n);printf(电信工程专业 1051210206n);3.14 增加图书信息 用户进入系统后,输入要添加的书籍信息。void add()/*增加功能*/int i,j;printf(请输入要增加图书的图书数量,按回车键结束n);scanf(%d,&j);for(i=0;ij;i+)printf(请输入要增加图书的图书名字,按回车键结束 book.name=);scanf(%s,booki.Name);printf(请输入要增加图书的图书书号,按回车键结束 book.num=);scanf(%s,booki.Number);printf(请 输 入 要 增 加 图 书 的 图 书 出
32、版 社,按 回 车 键 结 束桂林电子科技大学信息科技学院语言程序设计图书馆管理系统目录问题定义系统设计总体设计详细设计数据结构设计主控流程增加信息模块查找信息模块删除信息模块修改信息模块数据功能描述系统实现编码程序预处理主函数主菜测试归纳总结开发经验实训中遇到的问题与解决方法设计中的不足之处感想和心得体会参考资料前言课程设计环节是应用型本科院校非常重要的一个教学环节是学完一门课后应用本课知识与以前的知识积累而进行的综合性开放性的识创新能力团队精神等综合素质培养学生的设计能力和解决实际问题的能力语言由于其强大的功能丰富的表达能力高的代码良好的移植性和灵活性自年问世以来经久不衰即使现在出现了面向
33、对象的语言程序设计图书馆管理系统程序C语言程序设计 图书馆管理系统 18/26 book.publish=);scanf(%s,booki.publish);printf(请输入要增加图书的图书作者,按回车键结束 author=);scanf(%s,booki.author);3.15 查找图书信息 用户进入系统后,按信息记录进行查找该图书的书籍信息。void chazhao()/*查找功能*/int j=0;char Name20;printf(请输入书的 name=);/*请输入要查找图书的书名*/scanf(%s,Name);for(j=0;j500;j+)/*找到要查找图书的书名*/i
34、f(strcmp(bookj.Name,Name)=0)printf(n);printf(书名 书号 出版社 作者 n);桂林电子科技大学信息科技学院语言程序设计图书馆管理系统目录问题定义系统设计总体设计详细设计数据结构设计主控流程增加信息模块查找信息模块删除信息模块修改信息模块数据功能描述系统实现编码程序预处理主函数主菜测试归纳总结开发经验实训中遇到的问题与解决方法设计中的不足之处感想和心得体会参考资料前言课程设计环节是应用型本科院校非常重要的一个教学环节是学完一门课后应用本课知识与以前的知识积累而进行的综合性开放性的识创新能力团队精神等综合素质培养学生的设计能力和解决实际问题的能力语言由于
35、其强大的功能丰富的表达能力高的代码良好的移植性和灵活性自年问世以来经久不衰即使现在出现了面向对象的语言程序设计图书馆管理系统程序C语言程序设计 图书馆管理系统 19/26 printf(n);printf(n);printf(%s%s%s%s n,bookj.Name,bookj.Number,bookj.publish,bookj.author);break;else printf(抱歉,未找到相应书籍n);break;/*如果查找到图书的信息就输出该图书信息,否则输出sorry,未找到相应书籍*/3.16 删除图书信息 用户进入系统后,按条件输入要删除的图书信息。void del()/*删
36、除功能*/int j=0;char Name20;printf(请输入图书的书名,name=);/*按*/桂林电子科技大学信息科技学院语言程序设计图书馆管理系统目录问题定义系统设计总体设计详细设计数据结构设计主控流程增加信息模块查找信息模块删除信息模块修改信息模块数据功能描述系统实现编码程序预处理主函数主菜测试归纳总结开发经验实训中遇到的问题与解决方法设计中的不足之处感想和心得体会参考资料前言课程设计环节是应用型本科院校非常重要的一个教学环节是学完一门课后应用本课知识与以前的知识积累而进行的综合性开放性的识创新能力团队精神等综合素质培养学生的设计能力和解决实际问题的能力语言由于其强大的功能丰富
37、的表达能力高的代码良好的移植性和灵活性自年问世以来经久不衰即使现在出现了面向对象的语言程序设计图书馆管理系统程序C语言程序设计 图书馆管理系统 20/26 scanf(%s,Name);/*/for(j=0;j500;j+)/*/if(strcmp(bookj.Name,Name)=0)/*将定位到你所要查找图书的位置*/for(;bookj.Name0!=0;j+)bookj=bookj+1;/*将查找到的图书的后一本图书的信息覆盖这本图书的信息*/bookj.Name0=0;/*给结构体最后一个图书加上结束符*/3.17 修改图书信息 用户进入系统后,按条件输入要修改的图书信息。void
38、xiugai()/*修改功能*/int j=0;char Number20;printf(请输入要修改图书的 number=);/*请输入要修改图书的书号*/scanf(%s,Number);for(j=0;j500;j+)if(strcmp(bookj.Number,Number)=0)/*定位到你所要修改图书桂林电子科技大学信息科技学院语言程序设计图书馆管理系统目录问题定义系统设计总体设计详细设计数据结构设计主控流程增加信息模块查找信息模块删除信息模块修改信息模块数据功能描述系统实现编码程序预处理主函数主菜测试归纳总结开发经验实训中遇到的问题与解决方法设计中的不足之处感想和心得体会参考资料
39、前言课程设计环节是应用型本科院校非常重要的一个教学环节是学完一门课后应用本课知识与以前的知识积累而进行的综合性开放性的识创新能力团队精神等综合素质培养学生的设计能力和解决实际问题的能力语言由于其强大的功能丰富的表达能力高的代码良好的移植性和灵活性自年问世以来经久不衰即使现在出现了面向对象的语言程序设计图书馆管理系统程序C语言程序设计 图书馆管理系统 21/26 的位置,然后修改该书籍的相关信息*/printf(请输入要修改图书的图书名字,按回车键结束 book.name=);scanf(%s,bookj.Name);printf(请输入要修改图书的图书书号,按回车键结束 book.num=);
40、scanf(%s,bookj.Number);printf(请 输 入 要 修 改 图 书 的 图 书 出 版 社,按 回 车 键 结 束book.publish=);scanf(%s,bookj.publish);printf(请输入要修改图书的图书作者,按回车键结束 author=);scanf(%s,bookj.author);break;32 测试与调试 3.2.1 概述 一般情况下,为解决一个问题所编写的程序代码较长,可能包括几百条甚至成千上万条语句。在检查并排除所有语法错误后,还会有不易发现的逻辑错误,因此要对程序进行认真仔细的测试与调试。测试是通过运行程序发现错误的过程,常见的错
41、误有数据溢出、数组桂林电子科技大学信息科技学院语言程序设计图书馆管理系统目录问题定义系统设计总体设计详细设计数据结构设计主控流程增加信息模块查找信息模块删除信息模块修改信息模块数据功能描述系统实现编码程序预处理主函数主菜测试归纳总结开发经验实训中遇到的问题与解决方法设计中的不足之处感想和心得体会参考资料前言课程设计环节是应用型本科院校非常重要的一个教学环节是学完一门课后应用本课知识与以前的知识积累而进行的综合性开放性的识创新能力团队精神等综合素质培养学生的设计能力和解决实际问题的能力语言由于其强大的功能丰富的表达能力高的代码良好的移植性和灵活性自年问世以来经久不衰即使现在出现了面向对象的语言程
42、序设计图书馆管理系统程序C语言程序设计 图书馆管理系统 22/26 越界、进入死循环、语句顺序颠倒、多加“;”或少加“”等等。调试则是确定测试中找到的错误性质并改正错误的过程。测试与调试通常交替进行,即测试调试再测试再调试。能检查出尚未发现的、各种不同类型错误的测试才是成功的测试。测试程序需要测试用例,测试用例可用如下公式表示:测试用例测试数据预期结果。好的测试用例应该是用尽可能少的测试数据发现尽可能多的错误,即发现错误的概率要大。要选择合适的测试数据,使系统在运行时尽量能执行到每条语句,以测试各指令是否正确。还应分别测试输入合法数据与非法数据时,程序的运行情况,。对于合法数据,还要考虑数据的
43、一般性与特殊性,如求最大值的问题,应测试最大值在最前面、最后面、中间某一位置的情况。测试程序时,用监视窗口可以随时查看变量或表达式的值,有时还可以将部分程序代码用注释符暂时括起来,缩短程序,以便压缩出错代码的范围。3.2.2 程序测试 在主菜单中选择 1 当用户输入 1 并按回车键后,即可进入增加图书信息功能。其输入记录过程如图 3.1 所示。桂林电子科技大学信息科技学院语言程序设计图书馆管理系统目录问题定义系统设计总体设计详细设计数据结构设计主控流程增加信息模块查找信息模块删除信息模块修改信息模块数据功能描述系统实现编码程序预处理主函数主菜测试归纳总结开发经验实训中遇到的问题与解决方法设计中
44、的不足之处感想和心得体会参考资料前言课程设计环节是应用型本科院校非常重要的一个教学环节是学完一门课后应用本课知识与以前的知识积累而进行的综合性开放性的识创新能力团队精神等综合素质培养学生的设计能力和解决实际问题的能力语言由于其强大的功能丰富的表达能力高的代码良好的移植性和灵活性自年问世以来经久不衰即使现在出现了面向对象的语言程序设计图书馆管理系统程序C语言程序设计 图书馆管理系统 23/26 图 3.1 增加图书信息 在主菜单中选择 2 当用户输入 2 并按回车键后,即可进入查找图书信息界面。其查找过程如图 3.2 所示,这里按书名查找了一条书名为图书的记录。图 3.2 查找图书信息 在主菜单
45、中选择 3 当用户输入 3 并按回车键后,即可进入删除界面。其删除记录过程如图 3.3 所示,可按书名进行删除记录。桂林电子科技大学信息科技学院语言程序设计图书馆管理系统目录问题定义系统设计总体设计详细设计数据结构设计主控流程增加信息模块查找信息模块删除信息模块修改信息模块数据功能描述系统实现编码程序预处理主函数主菜测试归纳总结开发经验实训中遇到的问题与解决方法设计中的不足之处感想和心得体会参考资料前言课程设计环节是应用型本科院校非常重要的一个教学环节是学完一门课后应用本课知识与以前的知识积累而进行的综合性开放性的识创新能力团队精神等综合素质培养学生的设计能力和解决实际问题的能力语言由于其强大
46、的功能丰富的表达能力高的代码良好的移植性和灵活性自年问世以来经久不衰即使现在出现了面向对象的语言程序设计图书馆管理系统程序C语言程序设计 图书馆管理系统 24/26 图 3.3 删除图书信息 在主菜单中选择 4 当用户输入 4 并按回车键后,即可进入修改图书信息界面。其修改记录过程如图3.4所示。图 3.4 修改学生记录 桂林电子科技大学信息科技学院语言程序设计图书馆管理系统目录问题定义系统设计总体设计详细设计数据结构设计主控流程增加信息模块查找信息模块删除信息模块修改信息模块数据功能描述系统实现编码程序预处理主函数主菜测试归纳总结开发经验实训中遇到的问题与解决方法设计中的不足之处感想和心得体
47、会参考资料前言课程设计环节是应用型本科院校非常重要的一个教学环节是学完一门课后应用本课知识与以前的知识积累而进行的综合性开放性的识创新能力团队精神等综合素质培养学生的设计能力和解决实际问题的能力语言由于其强大的功能丰富的表达能力高的代码良好的移植性和灵活性自年问世以来经久不衰即使现在出现了面向对象的语言程序设计图书馆管理系统程序C语言程序设计 图书馆管理系统 25/26 在主菜单中选择 0 当用户输入 0 并按回车键后,即可执行退出管理程序的操作,。4、系统维护 经测试与调试确认软件无错时,开发就告一段落,这时可以交付软件供用户使用,但是在软件的使用过程中还会面临更加漫长的工作,即软件维护。一
48、般维护的工作有:更改使用中发现的错误;为适应实际环境而对程序进行修改;为满足新的需求而对程序作必要的改进等等。5、归纳总结 51 开发经验 通过对本题目的开发,体会到要掌握以下几点内容。52 实训中遇到的问题与解决方法 在这次的实训中,主要遇到的问题是编译环境的不同对程序也不同。还有各个函数的应用不够明确。53 设计中尚存的不足之处 关于这次的程序,也有挺多不足的地方。首先,我觉得程序还不够完善,有些地方甚至有点乱;其次,有些地方好像功能有点重复了;最后,就是该程序界面不够美观大方,缺少很多基本的功能。54 感想和心得体会 通过这次实训,C语言是一本需要严谨的态度来学习。在程序中一个分桂林电子
49、科技大学信息科技学院语言程序设计图书馆管理系统目录问题定义系统设计总体设计详细设计数据结构设计主控流程增加信息模块查找信息模块删除信息模块修改信息模块数据功能描述系统实现编码程序预处理主函数主菜测试归纳总结开发经验实训中遇到的问题与解决方法设计中的不足之处感想和心得体会参考资料前言课程设计环节是应用型本科院校非常重要的一个教学环节是学完一门课后应用本课知识与以前的知识积累而进行的综合性开放性的识创新能力团队精神等综合素质培养学生的设计能力和解决实际问题的能力语言由于其强大的功能丰富的表达能力高的代码良好的移植性和灵活性自年问世以来经久不衰即使现在出现了面向对象的语言程序设计图书馆管理系统程序C
50、语言程序设计 图书馆管理系统 26/26 号就会导致整体程序无法运行,函数的调用与相关知识要掌握其中的应用知识,才能做出更好地程序,这次实训给了我对 C语言产生了更多的兴趣。6、参考资料 1 谭浩强.C程序设计(第三版).清华大学出版社,2005 2 李凤霞.C程序设计辅导与实训 清华大学出版社 2001 桂林电子科技大学信息科技学院语言程序设计图书馆管理系统目录问题定义系统设计总体设计详细设计数据结构设计主控流程增加信息模块查找信息模块删除信息模块修改信息模块数据功能描述系统实现编码程序预处理主函数主菜测试归纳总结开发经验实训中遇到的问题与解决方法设计中的不足之处感想和心得体会参考资料前言课