《《高级语言程序设计》课程设计任务书.doc》由会员分享,可在线阅读,更多相关《《高级语言程序设计》课程设计任务书.doc(5页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、高级语言程序设计课程设计任务书(2010-2011学年第二学期第10周 计算机科学与技术专业 班一、课程设计目的及基本要求1教学目的(1)使学生巩固和加强高级语言程序设计课程的理论知识。(2)使学生掌握语言程序设计的方法及编程技巧,能正确使用语言编写程序。进一步理解和运用结构化程设计的思想和方法;学会利用流程图或N-S图表示算法。(3)掌握书写程设计开发文档的能力,使学生学会撰写课程设计总结报告。课程设计的思想和方法还可以作为学生做毕业论文时的参考资料。(4)通过查阅手册和文献资料,培养学生独立分析问题和解决问题的能力,及培养学生的创新能力和创新思维。学生可以根据参考文献,自己设计出相应的应用
2、程序。为学生做毕业设计打好基础。(5)初步掌握开发一个小型实用系统的基本方法:结合实际应用的要求,使课程设计既覆盖知识点,又接近工程实际需要。(6)培养学生良好的程序设计风格。在实际编程中,为了提高编程质量,对空行、空格和注释均有要求。学生在课程设计书写代码时,应该严格按要求处理,以便建立良好的程序设计风格。2教学要求从课程设计的目的出发,通过设计工作的各个环节,达到以下教学要求:(1)对系统进行功能模块分析、控制模块分析正确;(2)系统设计要实用;(3)编程简练,可用,功能全面,具有较好的健壮性;(4)说明书、流程图要清楚。二、课程设计的参考题目及要求课题序号课题名称人数要求1*公司员工工资
3、系统23人2*学院学生电话册23人3猜拳游戏12人4图书借阅系统23人5扫雷游戏12人6迷宫12人7计算器23人8汉诺塔12人(一)总体要求1) 要求利用C语言面向过程的编程思想来完成系统的设计; 2) 突出C语言的函数特征,以多个函数实现每一个子功能;3) 具有清晰的程序流程图和数据结构的详细定义;4) 进行简单界面设计,能够实现友好的交互;(二)、信息描述与功能描述1*公司员工工资系统(23人)每个员工的信息为:员工号、姓名、性别、单位名称、家庭住址、联系电话、基本工资、津贴、生活补贴、应发工资、电话费、水电费、房租、所得税、卫生费、公积金、合计扣款、实发工资。注:应发工资=基本工资+津贴
4、+生活补贴;合计扣款=电话费+水电费+房租+所得税+卫生费+公积金;实发工资=应发工资 合计扣款。A、员工信息处理(1) 输入员工信息(2) 插入(修改)员工信息(3) 删除员工信息(4) 浏览员工信息(提示:具体功能及操作参考题1)B、员工数据处理(1) 按员工号录入员工基本工资、津贴、生活补贴、电话费、水电费、房租、所得税、卫生费、公积金等基本数据。(2) 员工实发工资、应发工资、合计扣款计算。(提示:计算规则如题目。)(3) 员工数据管理提示:输入员工号,读出并显示该员工信息,输入新数据,将改后信息写入文件(4) 员工数据查询:提示:输入员工号或其他信息,即读出所有数据信息,并显示出来。
5、(5) 员工综合信息输出(提示:输出员工信息到屏幕)2*学院学生电话册(23人)A、问题描述建立一学生电话册,输入姓名、电话号码、住址等信息,然后对电话册进行显示、查找、添加、修改及删除。功能要求如下:(1) 电话册的每一条信息包括姓名、单位、固定电话、移动手机、班级、专业、EMAIL、QQ等。(2) 输入功能:可以一次完成若干条信息的输入。(3) 显示功能:完成全部电话册信息的显示(一屏最多显示10条,超过十条应能够自动分屏显示)(4) 查找功能:可以按班级、姓名等多种方式查找通讯信息(5) 增加、删除、修改功能:完成通讯录信息的多种更新B、算法分析首先,一个学生电话信息包括这么多的属性,应
6、该考虑定义一个结构,其次,我们应该考虑数据的存储形式,比如以数组的方式来存储,当然可以,但是我们知道,假如我们定义一个数组的话,我们首先必须知道学生人数大概是多少,以便我们确定数组的大小,但是题目中没有给出,而且题目要求中有大量的删除、插入操作,所以要斟酌使用。用菜单实现,其实也比较简单,首先我们用printf语句把程序的功能列出来,然后等待用户输入而执行不同的函数,执行完了一个功能后又回到菜单。文件的读写操作大家参照书中的有关文件的章节。3猜拳游戏(12人)游戏包括“开始游戏”、“排行榜查看”2个主要功能。(1)开始游戏每个用户有初始积分为100金币。1)每一轮猜拳游戏,用户首先输入押入这轮
7、的金币数(最大不可超过剩余金币数),如果赢得本轮,获得相应金币数,若输,损失相应金币数。2)提示信息让用户输入一个13之间的值,其值事先设定为: 1表示石头,2表示剪刀,3表示布。程序随机产生13的其中之一,然后与用户输入的值进行比较,根据猜拳游戏规则来判定,输出显示胜或败,并调整金币值。3)提示是否还要继续完游戏?如果输入Y或者y,则进行下一轮猜拳(步骤1)。如果输入N或n,则与排行榜中的前五名玩家的游戏记录比较,如果排名能够进入前五名,则提示用户输入玩家姓名,更新排行榜,退出程序。(2)排行榜查看(可选)此功能若不选,则功能1不必设置金币数。在排行榜查看功能中,用户可以查看当前的游戏排行,
8、排行榜中总共显示前5名玩家姓名和金币数。4图书借阅系统(23人)主要包括管理图书的库存信息、每一本书的借阅信息以及每一个人的借书信息。每一种图书的库存信息包括编号、书名、作者、出版社、出版日期、金额、类别、总入库数量、当前库存量、已借出本数等。每一本被借阅的书都包括如下信息:编号、书名、金额、借书证号、借书日期、到期日期、罚款金额等。每一个人的借书信息包括借书证号、姓名、班级、学号等。系统功能包括以下方面:A、借阅资料管理要求把书籍、期刊、报刊分类管理,这样的话操作会更加灵活和方便,可以随时对其相关资料进行添加、删除、修改、查询等操作。B、借阅管理 (1) 借出操作 (2) 还书操作 (3)
9、续借处理(可选)提示:以上处理需要互相配合以及赔、罚款金额的编辑等操作完成图书借还业务的各种登记。例如:读者还书时不仅更新图书的库存信息,还应该自动计算该书应罚款金额。并显示该读者所有至当日内到期未还书信息。C、读者管理读者等级:对借阅读者进行分类处理,例如可分为员工和学生两类。并定义每类读者的可借书数量和相关的借阅时间等信息。 读者管理:对读者信息可以录入,并且可对读者进行挂失或注销、查询等服务的作业。D、统计分析(可选)随时可以进行统计分析,以便及时了解当前的借阅情况和相关的资料状态,统计分析包括借阅排行榜、资料状态统计和借阅统计、显示所有至当日内到期未还书信息等功能分析。E 系统参数设置
10、:可以设置相关的罚款金额,最多借阅天数等系统服务器参数。5扫雷游戏(12人)做一个N x M的扫雷游戏,每个方格包含两种状态:关闭(closed)和打开(opened),初始化时每个方格都是关闭的,一个打开的方格也会包含两种状态:一个数字(clue)和一个雷(bomb)。你可以打开(open)一个方格,如果你打开的是 一个bomb,那么就失败;否则就会打开一个数字,该数字是位于0,8的一个整数,该数字表示其所有 邻居方格(neighboring squares)所包含的雷数。1)能够打开一个方格,一个已打开的方格不能再关闭。2)能够标记一个方格,标记方格的含义是 对该方格有雷的预测(并不表示真
11、的一定有雷),当一个方格标记后该方格不能被打开,只能执行取消 标记的操作,只能在取消后才能打开一个方格。3)能够给出游戏结果(输、赢、剩余的雷数、用掉的时间按秒计)。6迷宫 (12人)以一个 m x n的长方阵表示迷宫,0和1分别表示迷宫中的通路和障碍。设计一个程序,对任意设定的迷宫,求出一条从入口到出口的通路,或得出没有通路的结论,起点就是方阵中的(1,1)终点就是(m-1,n-1)。7计算器(23人)功能要求:程序首先显示计算器界面,用户输入一个算术计算式。假如用户输入17 2 ,程序将在计算器的屏上输出结果。如果输入错误,显示input error。 计算器界面如下:1 2 3 4 5
12、6 * / 7 8 9 = 0 End 要求:1)只要求计算一个式子,回车后将结果显示在屏幕上。 2)程序可重复进行运算,直到按End键退出。 3)当用户没有输入时,在程序界面的下方显示当前日期与时间。 4)运行过程保存计算器界面不改变 5)最好能实现类似这样的算式:36 + 3*4/2可选项:仿Windows计算器或数学计算器,实现其全部功能。8汉诺塔(12人)基本要求:1、实现输入汉诺塔的层数; 2、表现出汉诺塔的移动过程。扩展功能(可选): 1、丰富的界面效果,用图形界面表现汉诺塔的移动;2、可以用默认生成和用户自己操作两种形式,操作汉诺塔。三、主要实践环境VC+6.0四、进度安排课程设
13、计的题目应提前一周布置,以便学生作好充分准备。课程设计主要分成以下几个阶段:(1)系统分析与设计阶段:在前期资料查阅的基础上,学生对所选课题进行功能分析与设计,并与指导老师进行充分的沟通。(2)程序编制与调试阶段:学生在指导老师的指导下独立完成程序的编制与调试,指导老师应实时考察学生的实际编程与调试能力。(3)总结报告和书写说明书阶段:学生根据规定的格式编写内含课题说明书的课程设计报告。(4)答辩与考核阶段:指导老师选择部分学生进行当面提问答辩,答辩既可以以语言表达的方式,也可以直接在机房中进行实际操作与调试。五、课程设计报告要求课程设计报告包括封面、目录、需求分析、总体设计、详细设计、编码(详细写出编程步骤)、测试的步骤和内容、课程设计总结、参考资料等,不符合以上要求者,则本次设计以不及格记。六、课程设计的成绩评定1、程序设计结果(50%)2、课程设计报告(30%)3、平时表现(20%)七、上机安排(详见机房的上机安排表)上机地点:402-4上机时间:第10周,具体上机时间见下表:第10周星期一星期二星期三星期四星期五12节402-4402-4402-4402-434节402-4402-4402-4402-456节78节
限制150内