《CC++程序设计》任务书(课程设计题目,要求)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《C/C++程序设计课程设计》任务书
指导教师:崔雪冰王斌斌
课程名称: C/C++程序设计
班级: 0832131
河南城建学院计算机科学与工程学院
2013年12月
课程设计是学习掌握高级语言知识的重要实践环节,是在课程实验基础上进行的综合性实践教学活动。

一、课程设计目的
课程设计围绕课程的整体教学目标进行,课程设计的题目具有一定的综合性和应用性,只靠个别单元的知识一般不能实现课程设计的目标,需要对课程知识进行综合运用。

要完成好课程设计,就要对课程知识进行系统学习、复习、总结、应用,达到在实践中学习知识、掌握知识、应用知识和培养能力的目的。

①通过课程设计,进一步熟悉掌握以下知识:数据类型、分支控制、循环控制、函数的定义及调用、结构体及数组、指针、文件操作、编译预处理等。

②通过课程设计,达到系统理解、综合运用课程知识的学习目标。

③通过课程设计,学会用高级语言程序解决实际问题的方法。

④通过课程设计,掌握程序的局部测试、调试方法,建立程序系统调试、测试的基本概念和思想,学会较大程序的系统测试和调试方法。

二、课程设计的基本过程
高级语言课程设计一般包括6个步骤,即程序的功能设计、程序的数据设计、程序的函数设计、函数编码及调试、程序整体调试和课程设计总结等,各个步骤都有其特定的任务。

1.程序的功能设计
功能设计是课程设计的第一个环节,其任务是根据课程设计题目的描述和要求,确定程序要实现的功能,并把这些功能划分为不同的层次,确定各层功能的上下级关系,然后绘制出分级描述的程序功能框图,必要时对所列功能进行说明。

2.程序的数据设计
程序的数据设计主要包括对以下各类数据进行设计:
①对程序中用到的主要数据确定数据类型。

②对程序中用到的结构体数据定义其结构体类型。

③定义程序中使用的全局变量、外部变量等。

④定义程序中通用的符号常量。

⑤确定文件的数据类型,如二进制文件、文本文件等。

3.程序的函数设计
一个综合性的程序,需要设计若干个函数。

各个函数功能各异,使用的层次也不尽相同。

为了使总体设计协调有序地进行,需要在程序编码之前,对主要的函数做出预先设计,即所谓的函数设计。

程序的函数设计包括函数的功能设计和函数调用设计两个方面。

①函数的功能设计。

对应程序功能框图,确定各项功能要使用的主要函数,并进行明确描述,包括:函数名称、函数功能、函数参数、函数返回值类型等。

②函数调用设计。

对函数的调用关系进行描述,明确说明在实现程序功能时,函数之间将发生的调用和被调用关系。

4.函数编程及调试
函数编程及调试是实现程序功能的核心阶段,需要注意以下问题:
①课程设计具有一定的综合性,其程序通常由多个函数构成,每个函数都有独立的功能,实现特定的操作。

但程序中的所有函数是一个有机的整体,都围绕实现程序的功能进行设计。

②有些函数之间有调用和被调用关系,在进行函数设计时需要注意顺序问题,有的函数先设计,有的函数后设计,而没有调用关系的函数可以并列设计。

当多人合作进行一个课程设计时,可以并列设计的函数即可由不同的设计人员承担。

③程序设计是一个循序渐进的过程。

有的函数在程序设计前的函数设计阶段就被考虑到了,而有的函数是在程序设计过程中因需要才产生的。

但无论哪一个函数,都会经历由简单,到功能完善定型的过程。

④函数设计一般以功能实现为主线,围绕程序的一个功能进行函数设计。

每一个函数完成之后,都要立即进行函数功能测试,直到确认函数能实现其功能为止。

⑤有时在测试一个主调函数时,其被调用的函数还没有完成设计,这时最简便的方法,就是把被调用函数先设计为只有一个空的“return;”语句的函数,然后进行主调函数的基本测试。

当被调用函数设计完成之后,再进行详细的测试。

⑥不同功能的函数,对磁盘文件可能有不同的使用要求,因此在进行文件操作时,打开文件的方式就可能不同。

5.整体调试
整体调试是程序设计的必要阶段,是在前期程序设计调试基础上进行的基本过程。

需要设计准备一个较大规模的数据集,按照课程设计题目的功能要求,对组装完成的程序逐项进行功能测试和调试,直至确认程序达到了设计目标为止。

6.设计总结
设计总结是课程设计的最终阶段,通过对课程设计的各个过程进行系统全面地总结,按照指导教师的具体要求,形成课程设计报告。

三、课程设计题目
以下14个题目
1、建立n阶方阵,任选一题完成打印:
(1) 螺旋方阵,如下图:
1 2 3 4
12 13 14 5
11 16 15 6
10 9 8 7
(2) 蛇形方阵,如下图:
1 2 6 7
3 5 8 13
4 9 12 14
10 11 15 16
2、已知2000年1月1日为星期六,请输入任一年的年份后,打印该年的年历;
3、长整数的处理。

假定用一个整型数组表示一个长整数,数组的每个元素存储长整数的一位数字,则实际的长整数m表示为:
m=a[k]×10k-1+a[k-1]×10k-2+….+a[2]×10+a[1]
其中a[0]保存该长整数的位数。

求:长整数加长整数或长整数减长整数。

4、字符串处理:用一个字符数组保存着一个英文句子,要求:
(1) 删除该英文句子的前导空格、后导空格。

并删除句子中多余的空格(单词之间只留一个空格);
(2) 统计该句子中,单词出现的频率;
(3) 查找并替换某个单词。

5、文件处理:
(1) 统计各字母在文本文件中出现的频度(忽略大小写);
(2) 查找并替换正文中的字符串,并存入另一个文件中。

6、皇后问题:在国际象棋中,能否在空棋盘上摆放八个皇后,并使其中任意两个皇后不能在同一行或同一列或同一对角线上,并编写完整的摆放八皇后问题的程序。

要求:第一个皇后的起始位置由键盘输入,国际象棋的棋盘为8*8的方格。

7、迷宫问题,用数组方式实现一个迷宫。

8、小学生数学测试软件的编写,要求:
(1) 可选择题型(+,-,*);
(2) 可选择每次答题的个数;
(3) 随机生成两个数进行运算;
(4) 每次在输入答案后应判断对错,若答案错误,应给出正确答案;
(5) 最后给出做对题目的总个数。

注意:产生随机数的方法:使用随机数函数
在使用随机数函数random()之前,应包含文件
#in高级lude <stdlib.h>
然后使用下述函数初始化:
randomize();/* init the random number generator */
以后就可以直接使用random()函数来产生需要的数据:
如果需要产生10以内的数,使用random(10)就可以了;产生100以内的数,使用random(100)就可以了。

9、设计一个彩色的电子表,要求必须有电子表彩色边框图形,图形中间显示系统时间,以及年月日。

10、学生成绩管理系统
实现功能:
(1)录入模块
通过键盘录入某门课程全班同学的成绩。

(2)显示模块
显示所有录入的成绩。

(3)查询模块
查询相关同学的成绩。

(4)统计模块
统计各个等级的人数及百分比。

(5)按学号排序,按成绩排序。

11、职工信息管理系统设计
职工信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话等(职工号不重复)。

设计一职工信息管理系统,使之能提供以下功能:
职工信息录入功能(职工信息用文件保存)
职工信息浏览功能
查询功能:(至少一种查询方式) (1)按工资查询(2)按学历查询等
职工信息删除、修改功能(任选项)
12、图书管理系统
功能描述:
(1)新进图书基本信息的输入。

(2)图书基本信息的查询。

(3)对撤消图书信息的删除。

(4)为借书人办理注册。

(5)办理借书手续(非注册会员不能借书)。

(6)办理还书手续
信息描述:有关该系统基本信息的描述,如:图书名称、图书编号、单价、作者、存在状态、借书人姓名、性别、学号等
13、停车场管理系统
实现功能:每进入一辆汽车,必须登记汽车型号(小型车,中型车,大型车)、进入时间、停车编号,停车车位。

当汽车离开时,记录离开时间,计算停车费用(小型车1元/小时,中型车2元/小时,大型车3/小时)。

可以随时查询某辆车的停车情况。

14、电话本管理系统
实现功能:存入位置号、姓名、手机号;
可以按姓名或位置号查询;
可以显示所有记录;
可以按输入的姓名或位置号删除记录;
也可自选题目,但须经指导老师同意。

要求:
1、用高级语言实现系统;
2、利用数组或结构体实现上述题目的数据结构设计;
3、系统具有增加,查询,修改,删除,排序等基本功能;
4、进行简单界面设计,能够实现友好的交互;
5、具有清晰的程序流程图和数据结构的详细定义;
6、系统的各个功能模块要求用函数的形式实现;
7、完成设计任务并书写课程设计报告
四、课程设计任务
1、任务:在一周内正确地完成上述的一道题目。

2、学生完成实验后,找老师检查,检查的方法为:
(1) 检查文档;
(2) 检查运行结果。

五、课程设计考核方式
课程设计成绩评定的依据有设计文档资料、具体实现设计方案的程序及课程设计考勤登记表,其中平时成绩占总成绩的20%。

分如下五个等次:
优:按要求完成设计题目,有完整的符合标准的文档,文档有条理、文笔通顺,格式正确,其中有总体设计思想的论述,有正确的流程图,程序完全实现设计方案,设计
方案先进,软件可靠性好;
良:完成设计题目,有完整的符合标准的文档,文档有条理、文笔通顺,格式正确;有完全实现设计方案的软件,设计方案较先进;
中:完成设计题目,有完整的符合标准的文档,有基本实现设计方案的软件,设计方案正确;
及格:完成设计题目,有完整的符合标准的文档,有基本实现设计方案的软件,设计方案基本正确;
不及格:没有完成设计题目,没有完整的符合标准的文档,软件没有基本实现设计方案,设计方案不正确。

六、提交的资料
1、软件
软件需提供源程序,并能正常运行。

注:(1)对于程序中未能实现的部分需要加以说明。

(2)对于程序中所参考的部分代码需要加以声明,并说明出处。

2、文档(设计报告)
(1) 课程设计题目
(2) 设计要求
(3) 数据结构设计描述
(4) 各变量的定义和作用
(5) 系统各模块(函数)的组成,功能,参数说明,相互调用关系
(6) 各功能模块的算法处理流程图及相关说明
(7) 程序设计过程中遇到的问题及解决过程
(8) 课程设计心得及体会
(9) 附源程序
(10)参考文献
机房:10#A211,205
0832131 学生分组名单:
注: 每组第一位同学为组长,将主要负责课程设计时的组织安排工作。

第几组做第几题。

相关文档
最新文档