1、 课程设计报告课程设计报告 课程名称 程序设计基础 C 语言 设计题目 成绩记录簿 姓 名 杨国俊 专 业 计算机工程 班 级 学 号 指导教师 日期 2012.6.25 7.6 第 2 页 共 43 页 目录目录 一、目的及要求一、目的及要求 . 4 二、课程设计内容二、课程设计内容 4 三、总体设计三、总体设计. 5 3.1 功能模块设计功能模块设计 . 5 3.1.1 成绩记录簿执行的主流程 . 5 3.1.2 输入信息模块 . 5 3.1.3 修改成绩模块 . 6 3.1.4 删除模块 6 3.1.5 查学生成绩模块 . 6 3.1.6 查班成绩表模块 . 6 3.1.7 入文件模块
2、6 3.1.8 取文件模块 6 3.1.9 出模块。 7 3.2 数据结构设计数据结构设计 9 3.2.1 stu 结构体 . 9 3.2.2 全局变量 . 9 3.3 函数功能描述函数功能描述 . 10 1)init() . 10 2)input_list() . 10 3)insert() 10 4)input_info() . 10 5)check_number(char* s)和 same_numder(char* s) 11 6)check_name(char* s)11 7)check_number2(char* s)和 same_number2(student*p,int i).
3、11 8)int cheak_result(float s)和 cheak_credit(float s) .11 9)void add_result() .11 10)search_delete()、delete_stu(student* s)和 student*searchfront_stu() 12 11)seach_findstudent()、 output_stuinfo(student* p). 12 12)seach_findclass()、output_classinfo(int i) 12 13)save_tofile()、output_tofile(FILE* fp, st
4、udent* p) 13 14)load_file() 13 15)end()、free_list(student* p) . 13 四、四、 程序实现程序实现 . 13 4.1 源码分析源码分析 13 1)程序预处理 . 13 2).主函数 main . 15 3).程序初始化 16 4).各种合法性检测 . 16 5).输入数据(添加) 19 6).修改成绩 22 7)删除成绩 . 25 8).查询信息(班级和个人) . 27 查询班级 32 第 3 页 共 43 页 9).保存和打开文件 . 32 10).退出系统 35 五、结论及体会五、结论及体会 . 42 参考文献参考文献 43 第
5、 4 页 共 43 页 一、目的及要求一、目的及要求 1、目的 a)a) 本课程设计是计算机科学与技术专业重要的实践性环节之一,是在 学生学习完程序设计语言课程后进行的一次全面的综合练习。 本课程设计的目的和任务: b)b) 巩固和加深学生对 C 语言课程的基本知识的理解和掌握; c)c) 掌握 C 语言编程和程序调试的基本技能; d)d) 利用 C 语言进行基本的软件设计; e)e) 掌握书写程序设计说明文档的能力 f)f) 提高运用 C 语言解决实际问题的能力。 2. 课程设计要求 a)a) 分析课程设计题目的要求; b)b) 写出详细设计说明; c)c) 编写程序代码,调试程序使其能正确
6、运行; d)d) 设计完成的软件要便于操作和使用,有整齐、美观的使用界面; e)e) 设计完成后提交课程设计报告和源代码文件的电子文档。 二、课程设计内容二、课程设计内容 题目四:成绩记录簿 1. 设计要求: 基本要求: g)g) 添加成绩 h)h) 删除成绩 i)i) 查询学生成绩 j)j) 查询班级成绩 k)k) 退出 拓展功能: l)l) 写入文件 m)m) 读取文件 第 5 页 共 43 页 创新(自拟)功能: 程序实现的其它功能由个人自拟。 2. 设计要求具体说明 基本功能: 成绩记录簿中记录以下数据:学号、姓名、课程编号、课程名称、成绩、学 分,所有成绩都以百分制计分;输入信息时要检查数据项学号、课程编号、 成绩、学分的合法性,学号:8位数字;课程编号:5位数字;成绩:0 100 之间的整数,学分: 1 5之间的实型数。 添加成绩:需要输入学生的学号或姓名、课程编号及成绩,如已有该门课程 成绩给出提示; 查询(班级或个人)成绩: 查询个人成绩:以学号