课程设计.docx
- 文档编号:30138315
- 上传时间:2023-08-05
- 格式:DOCX
- 页数:10
- 大小:110.39KB
课程设计.docx
《课程设计.docx》由会员分享,可在线阅读,更多相关《课程设计.docx(10页珍藏版)》请在冰豆网上搜索。
课程设计
信息科学与技术学院程序设计基础课程设计报告
题目名称:
学籍管理系统
学生姓名:
严书乔
学号:
2011508043
专业班级:
计科11级02班
指导教师:
郑瑶
2012年7月4日
目录
1课程设计题目与要求3
1.1设计题目3
1.2设计要求:
3
2总体设计4
3详细设计5
3.1系统功能结构图:
5
3.2类设计5
4运行结果7
4.1数据录入7
4.2查询7
4.3排序9
4.4全部输出10
5课程设计总结11
6参考书目12
1课程设计题目与要求
1.1设计题目:
学籍管理系统
1.2设计要求:
1、有工作界面(菜单或按钮方式)。
2、进行学生基本信息的录入,包括学号,姓名,性别,宿舍号码,电话号码;所录入的数据存入一个文本文件(A.TXT)中;能根据情况调出数据。
进行学生成绩基本信息的录入,包括学号,课程编号,课程名称,学分,平时成绩,实验成绩,卷面成绩,综合成绩,实得学分,所录入的数据存入另一个文本文件(B.TXT)中,能根据情况调出数据。
3、具有排序功能,能实现选择按综合成绩或实得学分升序或降序排序并显示数据。
4、具有删除功能,当在A.TXT中删除一个学生时,自动地在B.TXT中删除此人所有信息。
5、具有查询功能,分为学生基本情况查询和成绩查询:
:
学生基本情况查询:
A1----输入一个学号或姓名(可实现选择),查出此生的基本信息并显示输出。
A2---输入一个宿舍号码,可查询出本室所有的学生的基本信息并显示输出。
B:
成绩查询:
B1:
输入一个学号时,查询出此生的所有课程情况,格式如下:
学号:
xx姓名:
xxxxx
课程编号:
xxx课程名称:
xxxxx综合成绩:
xxxx实得学分:
xx
课程编号:
xxx课程名称:
xxxxx综合成绩:
xxxx实得学分:
xx
课程编号:
xxx课程名称:
xxxxx综合成绩:
xxxx实得学分:
xx
6、能在屏幕上输出所有学生的信息。
2总体设计
系统功能结构图
图2—1系统功能结构图
3详细设计
3.1系统功能结构图:
图3—1系统功能结构图
3.2类设计
Basic类
数据成员:
学号,姓名,宿舍号,综合成绩,实得学分;
成员函数:
virtualintinput(ifstream&its)=0;
virtualvoidinput()=0;
virtualvoiddisplay(ofstream&its)=0;
virtualvoiddisplay()=0;
virtualvoiddisplay_1(){}
Student类
新增数据成员:
性别,电话号码
成员函数:
输入流input(ifstream&its)
输入函数input():
输入学号、姓名、性别、宿舍号、电话号码;
输出流display(ofstream&its)
输出函数display():
输出学号、姓名、性别、宿舍号、电话号码;
Course类
新增数据成员:
课程编号,课程名称、学分、平时成绩、实验成绩、卷面成绩
成员函数:
输入流input(ifstream&its)
输入函数input():
输入学号、课程编号、课程名称、学分、平时成绩、实验成绩、卷面成绩;
统计函数account():
计算综合成绩和实得学分;
输出流display(ofstream&its)
输出函数display():
输出学号、课程编号、课程名称、学分、平时成绩、实验成绩、卷面成绩、实得学分;
输出函数display_():
输出课程编号、课程名称、综合成绩、实得学分;
College类
数据成员:
ifstreamf:
ofstreams:
Basic*head:
链表的头指针
intji:
计算插入的数
intpl:
判断建立怎样的链表
成员函数:
Basic*build(Basic*p):
插入函数,将P有序的插入链表中
voiddisplay():
输出链表信息
voidfind_number():
查找学号
voidfind_name():
查找姓名(Student)
voidfind_dom_number():
查找宿舍号码
voidfind(Basic*a):
输入学号,查询出此生的所有课程情况(Course)
voidDelete(intj):
删除
voiddelete_student(College&b)当A.TXT中删除一个学生时,自动的在B.TXT中删除此人的所有信息(student)
voidtaxis_mark():
综合成绩排序
voidtaxis_credit():
学分排序
voidsave():
保存函数
4运行结果
4.1数据录入
图4—1数据录入
4.2查询
4.21学号查询
图4—2—1学号查询
4.22姓名查询
图4—2—2姓名查询
4.23宿舍号查询
图4—2—2宿舍号查询
4.24成绩查询
图4—2—3成绩查询
4.3排序
4.31综合成绩排序
图4—3—1综合成绩排序
4.32实得学分排序
图4—3—2实得学分排序
4.4全部输出
图4—4全部输出
5课程设计总结
在指导教师的精心教导下,我们学会了如何用C++编写一个简单的应用
序。
首先要对程序的设计要求有一个比较明确的认识,然后系统分析与系统设计,最后是代码设计与调试。
程序实现上,设计了简单的查询界面,将各个功能集中出来按照程序编写原则,便于查询。
根据C++课程所学的概念、理论和方法,按照C++程序设计的基本步骤,设计出一个适当规模的程序;进一步加深对C++语言的理解和掌握。
理论联系实际,加深和巩固所学的理论知识,提高实践能力和计算机的综合运用能力。
我们编写程序的过程是辛苦与快乐的,程序的编写原则很重要,只要我们在编程,就必须不断改进,才能更好提高编程能力。
通过本次的C++课程设计,让我学会了把书本上的知识应用到了实际中来。
虽然在这几周中有过挫折和坎坷,有的问题一直到了最后才被解决,但是我认为这未必就不是好事,这样能锻炼我的意志,磨练我的耐心,失败是成功之母,这话一点都没错,没有失败就没有成功。
让我没有失去信心的是关怀我们的老师,当我们有了问题和疑问,老师就很耐心的给予讲解,让我们有了一个良好的学习氛围。
6参考书目
1、《C++程序设计》谭浩强清华大学出版社
2、《VISUALC++6.0完全自学手册》孔鹏人民邮电出版社
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计