C语言课程设计报告-班级档案管理系统.doc_第1页
C语言课程设计报告-班级档案管理系统.doc_第2页
C语言课程设计报告-班级档案管理系统.doc_第3页
C语言课程设计报告-班级档案管理系统.doc_第4页
C语言课程设计报告-班级档案管理系统.doc_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

任务书完成日期 2008 年 7 月 8 日 C 语言程序课程设计任务书 一一 课程设计性质与目的 课程设计性质与目的 C 语言程序设计是一门实践性很强的课程 C 程序课程设计是学习 C 语言 程序设计的非常重要的实践环节 通过本课程设计使学生进一步巩固课堂所 学 全面熟悉 掌握 C 语言程序设计的基本方法和技巧 进一步提高编写 程 序 分析程序及上机操作 调试程序的能力 让学生加深理解书上所学的知识 提高动手操作能力及分析问题和解决问题的能力 二二 课程设计包含的知识点 课程设计包含的知识点 1 掌握并熟练利用 C 语言的基本数据类型与各种表达式 程序的流程控制语 句 2 掌握数组的基本概念 掌握一维数组与二维数组的使用 掌握字符数组与 字符串的关系 3 熟练掌握指针 地址 指针类型的概念及其使用 掌握指针变量的定义与初 始化 指针的间接访问和表达式 掌握指针与数组 函数 字符串的联系 4 掌握函数的定义 函数的返回值 函数的调用 函数的声明 函数的形式参 数和实际参数之间的关系 了解函数的作用区间 5 掌握结构体的概念 结构体类型的定义 结构体变量的定义和初始化 结构 体成员的表示 结构体与指针 函数的关系 三三 课程设计的要求课程设计的要求 1 学生从以下八个题目中任意选择并完成一个题目 要求每个学生能够独立思 考 并按时完成本课程设计所包含的所有内容 2 要求学生必须按照课程设计报告的完整格式说明设计内容 设计任务 分析 1 过程和算法 给出程序流程图和全部源程序 并做出总结 3 设计报告的完整格式应包含以下内容 a 设计总体思路 b 主程序及各个模块说明 c 总体模块框图 d 各个程序模块说明 e 程序流程图 f 程序清单 g 总结与体会 四 时间安排四 时间安排 时间上午下午晚上 1 4 节 四学 时 5 6 节 四学时 6 00 10 00 四学时 6 月 30 号布置课题 7 月 1 号上机编程 7 月 2 号上机编程 7 月 3 号 7 月 4 号上机编程 五 课程设计考核办法 五 课程设计考核办法 根据学生所完成课程设计报告的完整性 正确性 和算法实现的质量 分为 优 良 中 及格和不及格五个等级 六 课程设计指导老师 六 课程设计指导老师 王 颖 七 课程设计题目 七 课程设计题目 2 设计课题二 设计课题二 班级档案管理系统班级档案管理系统 1 问题描述 问题描述 班级档案管理系统 2 功能描述 功能描述 对一个有 N 个学生的班级 通过该系统实现对该班级学生的基本信息进行录入 显示 修改 删除等操作的管理 3 算法提示 算法提示 数据结构 结构体类型数组 数据库结构 下表构成该系统的基本数据库 姓名学号性别年龄备注 charCharcharintchar 4 测试数据 测试数据 学生人数 N 10 基本信息包括 学号 姓名 班级 年龄 电话号码 QQ 号 电子邮件 寝室号等 5 其它 其它 对该系统有兴趣的同学可以在实现上述基本功能后 完善系统的其它 功能 3 课程设计主文档 一 一 课程设计题目 课程设计题目 班级档案管理系统班级档案管理系统 二二 内容摘要 内容摘要 对一个有 N 个学生的班级 通过该系统实现对该班级学生的基本信息进行 录入 显示 修改 删除等操作的管理 三三 关键字 关键字 函数 数组 结构体 文件 循环语句 多分支结构 四 总体设计方案的选定四 总体设计方案的选定 程序的功能要求 1 本系统采用一个包含 N 个数据的结构体数组 每个数据的结构应当包括 学 号 姓名 性别 年龄 备注 2 本系统显示这样的菜单 班级档案管理系统 学生基本信息录入 4 学生基本信息显示 学生基本信息删除 学生基本信息修改 学生基本信息查找 退出系统 5 课程设计报告规范 需求分析需求分析 1 程序的功能 2 输入输出的要求 概要设计概要设计 1 程序由哪些模块组成以及一个模块之间的层次结构 模块的调用关系 每个模块的功能 2 课题的总体数据结构和数据库结构 即要存储什么数据 这些数据是什 么样的结构 它们之间有什么关系等 详细设计详细设计 1 采用 C 语言定义相关的数据类型 2 写出各模块的类 C 码算法 3 画出函数的调用关系图 调试分析以及设计体会调试分析以及设计体会 1 测试数据 准备典型的测试数据和测试方案 包括正确的输入及输出结 果和含有错误的输入及输出结果 2 程序调试中遇到的问题以及解决问题的方法 3 课程设计过程经验教训 心得体会 使用说明使用说明 用户使用手册 说明如何使用你编写的程序 详细列出每一步的操作步骤 附录附录 1 参考书目 6 2 源程序清单 带注释 附附 1 1 课程设计报告装订顺序 封面 任务书 目录 正文 评分 附件 A4 大 小的图纸及程序清单 正文的格式 一级标题用 3 号黑体 二级标题用四号宋体加粗 正文用小四号 宋体 行距为 22 正文的内容 一 课题的主要功能 二 课题的功能模块的划分 要求画出 模块图 三 主要功能的实现 至少要有一个主要模块的流程图 四 程序调试 五 总结 六 附件 所有程序的原代码 要求对程序写出必 要的注释 正文总字数要求在 5000 字以上 不含程序原代码 7 前 言 C 语言程序设计 课程设计是对学生的一种全面综合训练 它包括问 题分析 总体结构设计 用户界面设计 程序设计基本技能和技巧 多人合 作 以至一整套软件工作规范的训练和科学作风的培养 是与课堂听讲 自 学和练习相辅相成的必不可少的一个教学环节 通常 课程设计的课题比平 时的习题复杂得多 也更接近实际 课程设计着眼于与应用的结合点 使学 生学会如何把书上学到的知识用于解决实际问题 培养软件工作所需要的动 手能力 另一方面 能使书上的知识变 活 使学生更好地深化理解和灵 活掌握教学内容 为了达到上述目的 本课程设计安排了八个设计课题 训 练重点在于基本的程序设计方法和分析问题的能力 而不强调面面俱到 学 生可任选其中一题进行设计 设计完毕写出课程设计报告 用 A4 纸打印成册 并将课程设计报告与源程序存盘 学习委员将课程设计报告与磁盘收齐后交 指导老师 一 目的一 目的 全面熟悉 掌握 C 语言基本知识 掌握 C 程序设计中的顺序 分支 循环 三种结构及数组 函数和 C 语言基本图形编程等方法 把编程和实际结合起来 增强对不同的问题运用和灵活选择合适的数据结构以及算法描述的本领 熟悉 编制和调试程序的技巧 掌握分析结果的若干有效方法 进一步提高上机动手 能力 培养使用计算机解决实际问题的能力 养成提供文档资料的习惯和规范 编程的思想 为以后在专业课程中应用计算机系统解决计算 分析 实验和设 计等学习环节打下较扎实的基础 二 设计要求二 设计要求 掌握结构化程序设计的主体思想 以自顶向下逐步求精的方法编制程序解 8 决一些实际的问题 为将来编写软件积累一些典型的案例处理经验 1 设计正确 方案合理 2 界面友好 使用方便 3 程序精炼 结构清晰 4 设计报告 5000 字以上 含程序设计说明 用户使用说明 源程序清 单及程序框图 5 上机演示 6 按学号顺序选课题号 并在规定的时间内独自完成相关课题的 C 源程 序编写 调整和运行 源程序及编译生成各文件均保存在软盘中 7 务书的要求 按附录的要求编写 课程设计报告 Word 文档格式 并用 A4 的复印纸打印并装订 8 008 年 7 月 4 日之前 请各班班长收齐课程设计报告和源程序软盘交 王颖老师 联系电话 8883238 三 进度安排三 进度安排 第 19 周 星期一 总体设计 详细设计 星期二 编程 上机调试 修改程序 星期三 上机调试 完善程序 星期四 完善程序 星期五 答辩 第 20 周 星期二 0 撰写课程设计报告 9 目 录 前前 言言 4 4 目的 4 设计要求 4 进度安排 5 课程设计报告规范课程设计报告规范 6 6 需求分析 6 概要设计 6 详细设计 6 调试分析以及设计体会 6 使用说明 6 附录 6 C C 语言程序课程设计任务书语言程序课程设计任务书 8 8 课程设计性质与目的 8 课程设计包含的知识点 8 课程设计的要求 8 时间安排 9 课程设计考核办法 9 课程设计指导老师 9 课程设计题目 9 问题描述 10 功能描述 10 算法提示 10 测试数据 10 其它 10 课程设计主文档课程设计主文档 1111 课程设计题目 11 内容摘要 11 关键字 11 总体设计方案的选定 11 程序的模块组成以及各个函数的功能程序的模块组成以及各个函数的功能 1212 模块组成 12 各函数的主要功能 12 10 详细设计详细设计 1212 相关的数据类型相关的数据类型 1313 函数间的调用关系图函数间的调用关系图 1313 函数的下属子功能函数及其调用示意图 13 函数及其调用示意图 13 流程图流程图 1515 源程序清单源程序清单 错误 未定义书签 心得体会心得体会 2525 参考资料参考资料 2828 应用技术学院课程设计评分表应用技术学院课程设计评分表 2828 11 程序的模块组成以及各个函数的功能程序的模块组成以及各个函数的功能 1 程序的模块组成 程序的模块组成 主菜单函数 主函数 main 自定义子菜单函数 void add void display void find void delete void modify 2 各函数的主要功能 各函数的主要功能 主函数 显示主菜单 自定义子菜单函数 显示子菜单 详细设计详细设计 1 本系统采用一个包含 N 个数据的结构体数组 每个数据的结构应当包括 学 号 姓名 性别 年龄 备注 2 本系统显示这样的菜单 班级档案管理系统 学生基本信息录入 学生基本信息显示 学生基本信息删除 学生基本信息修改 学生基本信息查找 退出系统 请选择系统功能项 0 5 12 3 执行一个具体的功能之后 程序将重新显示菜单 相关的数据类型相关的数据类型 数据结构 结构体类型数组 数据库结构 该系统的基本数据库如下 姓名 学号 性别 年龄 备注 Char char char int char 函数间的调用关系图函数间的调用关系图 main 函数的下属子功能函数及其调用示意图函数的下属子功能函数及其调用示意图 main 退出系统进入系统 13 子功能函数及其调用示意图子功能函数及其调用示意图 主 菜 单 main 信息输入 信息查找 信息删除 信息显示 信息修改 信息查找 按姓名查找 按学号查找 信息输入 学号 年龄 姓名 性别 备注 14 主菜单 开始 结束 信息修改 退出系统 显示信息 返回 进入系统 信息查找 信息输入 返回 显示信息 选择功能 选择查找方式 选择功能 按个输入 返回主菜单 信息删除 信息显示 五 流程图五 流程图 15 六 源程序清单 六 源程序清单 include include include FILE fp struct student 定义一个结构体 student char number 5 结构体中包含了学号 姓名 性别 年龄 备注 5 个成员 char name 15 char sex 10 int age char zb 100 void add 设置了输入 显示 查找 删除 修改 5 个函数 void display void find void delete void modify main char m for clrscr printf n t MENU t 显示主菜单 printf n n 16 printf n n t 1 add the information of the students n 主菜单 包括输入 显示 修改 删除 查找 printf t 2 show the information of the students n printf t 3 modify the information of the students n printf t 4 delete the information of the students n printf t 5 search the information of the students n printf t 0 exit the information of the students n 按 0 退出 系统 printf please choose 1 2 3 4 5 0 to enter n 请选择按键 printf n please press the number m getchar if m 0 1 输入 break case 2 display 2 显示 break case 3 modify 3 修改 break case 4 delete 4 删除 break case 5 find 5 查找 break case 0 exit 0 0 推出 printf please press any key to quit 按其他键停止 getchar getchar 17 else printf n n Error getchar getchar void add 输入函数系统 struct student stu 11 int i if fp fopen d filename txt w NULL 为输出打开的文件为 0 printf n can t open the file 显示不能打开 exit 0 for i 0 i 10 i printf n n please input the information 输入学生的信息 printf n number scanf s stu i number printf n name scanf s stu i name printf n sex scanf s stu i sex printf n age scanf d printf n zb 18 scanf s stu i zb getchar fprintf fp n n s s s d s stu i number stu i name stu i sex stu i age stu i zb 以一定格式把信息输送到所指定的文件中 fclose fp 关闭文件 void display 显示学生信息系统 struct student stu 11 int i clrscr if fp fopen d filename txt r NULL 为输入打开的为 0 printf can t open the file exit 0 printf n number name sex age zb n 显示学生信息 for i 0 i 10 i fscanf fp s s s d s stu i number stu i name stu i sex 以 格式化形式把数据送到所指定的文件中 printf n n n s s s d s stu i number stu i name stu i sex stu i age stu i zb 显示 学生信息 fclose fp 关闭文件 void find 查找学生信息系统 19 int i j struct student stu 11 char NO 5 char name 15 clrscr if fp fopen d filename txt r NULL 为输入打开的文件为 0 printf n can t open the file exit 0 printf n search in the order of NO please input 1 用学号查找 按 1 printf n search in the order of name please input2 用名字查找 按 2 printf n please choose 请选择 scanf d if j 1 如果用学号查找 printf please input the number scanf s NO for i 0 i 10 i if strcmp NO stu i number 如果输入的学号与结构体的学号相同 fscanf fp s s s d s stu i number stu i name stu i sex printf s s s d s stu i number stu i name stu i sex stu i a ge stu i zb 显示找到的学生信息 20 break else printf can t find the information if j 2 如果用名字查找 printf please input the name scanf s name for i 0 i 10 i if strcmp name stu i name 输入的名字与结构体的相同 fscanf fp s s s d s stu i number stu i name stu i sex printf s s s d s stu i number stu i name stu i sex stu i a ge stu i zb 显示找到的学生信息 break else printf can t find the information fclose fp void delete 删除学生信息系统 int i struct student stu 11 21 char num 5 if fp fopen d filename txt r NULL 为读写打开的文件为 0 printf n can t open the file exit 0 printf n input the number 输入学号 scanf s num for i 0 i 10 i if strcmp num stu i number 如果输入的学号与结构体中的相同 for i 10 i strcpy stu i number stu i 1 number 将后一项的数据赋给前一项 重而删除了前一项 strcpy stu i name stu i 1 name strcpy stu i sex stu i 1 sex stu i age stu i 1 age strcpy stu i zb stu i 1 zb break printf n can t find the information fclose fp void modify 修改学生信息系统 22 int i struct student stu 11 插入一个结构体成员 char NO 5 xm 15 xb 10 bzh 100 int nl int k 0 if fp fopen d filename txt r NULL 为读写打开的文件为 0 printf n can t open the file exit 0 printf n please input the xuehao 插入一个学号 scanf s NO for i 0 i 10 i fscanf fp s stu i number if strcmp NO stu i number 如果输入的学号与结构体的不相同 k 1 break 退出 if k 如果相同 printf n please input new information scanf s s s d s NO xm xb strcpy stu i number NO 将数据赋值到相应的变量中 从而修改了学生 的信息 strcpy stu i sex xb strcpy stu i name xm stu i age nl 23 strcpy stu i zb bzh fprintf fp s s s d s stu i number stu i name stu i sex stu i age stu i zb 以一定格式把数据输出到所指定的文件中 printf n can t find the information fclose fp 关闭文件 24 心得体会心得体会 不经一番寒彻骨 哪得梅花扑鼻香 一周的 C 语言课程设计即将结束 现在回想起来真是五味俱全 从开始的 懵懂无知到现在做出一本挺有厚度的资料 我不但实践了课本的知识 还制作 出心算小程序 虽然很多人帮了我的忙 仍旧感觉自己对 C 语言有了深入的了 解 还是有所成长 有所收获 在实践中 自己编程常会犯错误 并总结一些 克服缺点的方法 深刻体会到程序设计中最重要的一部分不是编写源程序 而 是调试过程 只有经过调试程序 我们才能掌握正确的语法知识及把问题的解 决方法用程序语言来表达 其实这一周遇到了不少的挫折 第一次上机就有些不知所措 到底该从何 下手呢 后来有朋友同学的鼓励 慢慢调整心态 开始动手操作 原来编程很 有意思 有时遇到了一个错误怎么找也找不到原因所在 找了老半天结果却是 一个函数放错了地方所致 有时一个功能不知道怎么实现找这个 找那个 有 所编到最后一运行却告诉我错误 那真的很让人恼火 以前上课都是学一些最 基本的东西 觉得很枯燥 而现在却可以将以前学的东西编出有实际价值的东 西 这样自己非常的投入 其实什么事情只要自己用心了 就会有所感触 有 所收获 真的觉得有味道 生活都变充实了 此次程序设计主要用了函数的调用 if else 选择语句 switch 语句 时间函数 标准输入输出 随机取整函数等基本知识点 结合课本知识加上自 己的应用结果颇为令人满意 但是还有很多的缺陷与不足 这是我可以清醒认 识到的 C 语言是一项细致深入的工作 不仅要有严谨的思路 还要在实践中有耐 心 要细心 如果无法沉着冷静 真的会看不到结果 毫无收获的 C 语言又是一种系统开发语言 这一个学期对 C 语言的接触让我明白了自 己的不足之处 对书上内容的理解不够透彻 这一周的课程设计让我们有机会上机调试 我才发现我们的程序存在这么 多的漏洞和错误 我经过了一个下午的时间 在老师的指导下 检查调试这程 序 终于让它能够运行了 但是课程设计并不是那么的简单 能运行的程序并 不代表就是对的 我们还要按要求测试数据 一点一滴的把程序按要求做出来 25 通过这次的课程设计 我受益匪浅 它让我了解了细心的重要性 程序中 若有一丝一点的错误就会影响整个程序 而使其不能运行 当我第一次拿到课 程设计的任务书的时候 我都非常的兴奋 因为这是我们一次很好的锻炼机会 我经过一周的 C 语言课程设计 我不但实践了课本的所学的知识 还亲自制作 了自己的小程序 感觉自己对 C 语言有了更深入的了解 在实践过程中 自己编程的时候常常会犯错误 并总结了一些克服缺点的 方法 而且更深刻体会到程序设计中最重要的一部分不是编写源程序 而是调 试过程 只有经过调试程序 我们才能掌握正确的语法知识及把问题的解决方 法用程序语言来表达 在设计程序的同时也增长了翻阅有关文献的能力 加强 了实践能力及自学能力 培养了分析问题 编程和动手能力 掌握了程序设计 基本技能 在调试过程中 特别让我印象深刻的是自己开始在程序调试的时候 开始 并没有并没有看到预期的结果 最后我仔细检查了源程序代码 发现自己在申 明函数的时候 出现了一个严重的语法问题 导致我整个程序都不能运行 我 开始心理发慌起来 我开始放弃自己的先前做的 工作 觉得自己是第一次做设 计 第一次看到这么长的程序代码 有理

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论