数据结构课程设计指导书专业用_第1页
数据结构课程设计指导书专业用_第2页
数据结构课程设计指导书专业用_第3页
数据结构课程设计指导书专业用_第4页
数据结构课程设计指导书专业用_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

1、 数据结构课程设计指导书 计算机科学与控制学院 一目的通过本课程设计,使学生更加系统地理解和掌握数据结构的基本概念;使学生能自如地根据实际要求,设计相应的数据结构,并运用C+语言实现所设计的算法,编写较大型的程序,分析和解决实际应用问题,为后续其它专业课程的学习和应用打下良好基础.二题目根据指导教师的具体要求,从下面题目中选择1个题目来完成 :1 二叉树的应用哈夫曼树(电文的编码和译码)2 运动会分数统计3 学生成绩管理系统4 简易客房管理系统5 其他类型管理系统的题目人事档案管理系统图书管理系统进销存货物管理系统职工工资管理系统6. 稀疏矩阵运算器7. 表达式的求值8. 长整数的四则运算9.

2、 校园导游咨询10停车场管理11其余题目:(必须事先得到指导老师允许 )三任务完成形式1 完整的软件系统 最终必须向指导老师提交完整的程序源代码(。c和.cpp以及。h为后缀的文件)、数据文件以及使用说明文件等.源代码文件要特别注意编程规范、代码风格,关键代码需有合理的注释,不含任何无用代码;数据文件内要求有一定数量的“真实"数据(如对于记录文件,需要有8条以上记录); 使用说明文件的第一行,需要给出设计者的学号、姓名,后面为其它说明。2 课程设计报告(详细要求请参考附录二)课程设计报告总体上主要包括以下几个部分:1)封面2)目录3)课程设计报告正文4)使用说明5)参考文献四总体要求

3、1 每道题目的程序代码总量不少于500行(其中不包括自动生成代码),有合理注释。2 课程设计报告正文字数不少于7000字,概念清楚、叙述正确、内容完整、书写规范.3 独立完成课程设计,不得抄袭他人。4 功能正确、有一定实用性。5 尽可能大量使用各种C+语言程序设计技术,尤其在以下几个方面:指针及其运算、结构、指针数组、数组指针、字符数组与字符串、内存空间动态申请与释放、文件访问与操作、合理的常量与全局变量及函数接口变量定义、数据输入与数据格式检查、数据类型转换、错误处理、工程设计技术(整个系统由一个工程文件、若干个程序文件、若干头文件、甚至库文件等组成)。程序界面不做较高要求,但要考虑到用户使

4、用的方便,有较好的交互界面。6 可以使用VC编译环境开发程序,但不允许使用现成的数据库如access,SQL Server等完成上面的课程设计题目,否则成绩评定为不及格.7 设计时适当考虑程序的可维护性与可扩充性.8 提倡积极交流与讨论(同学间、bbs站点)、善于查阅资料、分析与借鉴他人编写的软件.9 认真自觉以个人为单位完成自己的任务,代码和课设报告均严禁雷同,否则成绩为不及格。验收时查看代码,并提出若干个跟程序代码有关的问题,并把问题回答情况计入总评成绩. 五工作阶段与考核方法大体上可分成五个阶段: 1资料查阅准备阶段(15)2分析设计阶段(35)3编程调试阶段(40)4课程设计报告书写阶

5、段(10)5验收阶段 考核方法: 只有程序验收通过后,才能按以下方法核定本次课程设计的总成绩,因未能独立完成设计(尤其是抄袭)或概念不清的同学,总成绩将核定为不及格.总成绩由以下几个部分决定:1 考勤、纪律、实验室卫生2 工作量(代码量、功能多少、难度)3 关键技术4 实用性、创新5 代码书写规范性6 程序界面、新技术引用7 课程设计报告(叙述、书写规范、字数)8 动手能力、分析问题解决问题能力 六任务具体要求1、二叉树的应用哈夫曼树(电文的编码和译码)哈夫曼编码/译码器 问题描述:设计一个哈夫曼编码/译码系统,对字符串进行编码/译码 基本要求: (1)从键盘输入字符串,以回车结束; (2)根

6、据字符串中字符出现的概率进行哈夫曼编码;) (3)并输出编码结果和编码表;(4)根据编码结果和编码表还原字符串; (5)输出编码过程中构造的哈夫曼树。内容:理解二叉树的基本概念,并在读懂下面详细描述的算法的情况下,编写一个有关二叉树的简单应用程序电文的编码和译码.具体实验题目和功能要求如下:(1)电文编码:假如有一份电文中共使用5个字符:a、b、c、d、e,它们的出现频率依次为4、7、5、2、9,试画出对应的哈夫曼树(请按左子树根结点的权小于等于右子树根结点的权的次序构造),并求出每个字符的哈夫曼编码其中:得到的哈夫曼树和哈夫曼编码如下.图1要求自己编程实现若从键盘输入若干字符,同时并输入它们

7、各自出现的频率,最后能计算并在屏幕上显示出每个字符的代码。(2)电文译码:给出一段二进制代码的电文,要求根据前面构造的huffman树进行译码.在前面编码的基础上,键盘输入一段电文,则能在屏幕上显示出自动翻译好的电文。比如根据图1显示的哈夫曼树,键盘输入电文如下:1011010,屏幕上能显示自动翻译的结果为bed说明事项:1。通过上面的描述本课程设计题目包括(1)电文的编码(2)电文的译码,要求必须用哈夫曼树实现。2. 界面要求:有合理的提示,每个功能可以设立菜单,根据提示,可以完成相关的功能要求。并要明确,只有在使用哈夫曼树进行编码的前提下,才有可能进行译码.3.考虑将此程序设计完善,比如可

8、以将编码后的字符代码保存到文件中,将需要翻译的代码保存到另一个文件中,最后把自动翻译后的结果也保存到文本文档中等等。在这个程序中,首先要构造一棵哈夫曼树,然后才能根据这棵哈夫曼树构造编码。因此,步骤一:构造哈夫曼树步骤二:根据哈夫曼树为每个字符编码步骤三:根据步骤二中构造好的哈夫曼树进行译码提示:具体算法见后面的有关哈夫曼树的基础知识介绍部分代码(仅供参考)如下:const int N=5;/叶子结点数目const int TREENODENUM=2*N1;/结点总数/huffman树结点的结构typedef char dataType;typedef structfloat weight;d

9、ataType data;int lchild,rchild,parent;huffmanTreeNode;/哈夫曼编码的结构typedef struct char bitsN;/详细的编码,不过是反的,要从cnt开始读int cnt;/记录这个字符数由几位bit表示的dataType data;/编码要表示的字母codeType;有关哈夫曼树的基础知识介绍(1)哈夫曼树的定义哈夫曼树:设有个权值,构造一棵有个叶子结点的二叉树,每个叶子结点的权值为,则最小的二叉树叫哈夫曼树其中:为权值为结点到根到路径长度为叶子结点数(2)构造Huffman树的方法-Huffman算法构造Huffman树步骤如

10、下:根据给定的n个权值w1,w2,wn,构造n棵只有根结点的二叉树,令其权值为wj在森林中选取两棵根结点权值最小的树作左右子树,构造一棵新的二叉树,置新二叉树根结点权值为其左右子树根结点权值之和在森林中删除这两棵树,同时将新得到的二叉树加入森林中重复上述两步,直到只含一棵树为止,这棵树即哈夫曼树例如:第一步:n棵只有根结点的二叉树,每个结点有相应代表的符号和权值第二步:从中挑出权值最小的合并生成一棵新的树,置新生成的二叉树的根结点第三步:不断重复第二步,直到只有一个根结点第四步:最后完成一棵huffman树哈夫曼树结点的存储结构(3)哈夫曼树应用(哈夫曼编码)哈夫曼树中没有度为1的结点,称为严

11、格的二叉树。哈夫曼编码:数据通信用的二进制编码思想:根据字符出现频率编码,使电文总长最短编码:根据字符出现频率构造哈夫曼树,然后将树中结点引向其左孩子的分支标“0”,引向其右孩子的分支标“1";每个字符的编码即为从根到每个叶子到路径上得到到0、1序列例如:要传输到字符集DC,A,S,T,;字符出现频率w2,4,2,3,3得到的哈夫曼树和哈夫曼编码为(4)Huffman编码算法的基本思想从叶子treei出发,利用双亲地址找到双亲结点treep,再利用treep的lchild和rchild指针域判断treei是treep的左孩子还是右孩子,然后决定分配代码是“0”还是“1",然

12、后以treep为出发点继续向上回溯,直到根结点为止(5)Huffman译码算法的基本思想从Huffman树根开始,从待译码电文中逐位取码.若编码是“0”,则向左走;若编码是“1”,则向右走,一旦到达叶子结点,则译出一个字符;再重新从根出发,直到电文结束2、运动会分数统计任务:参加运动会有n个学校,学校编号为1n.比赛分成m个男子项目,和w个女子项目。项目编号为男子1.。m,女子m+1。.。.。m+w。不同的项目取前五名或前三名积分;取前五名的积分分别为:7、5、3、2、1,前三名的积分分别为:5、3、2;哪些取前五名或前三名自己设定。(m<=20,n<=20)功能要求:1。可以输出

13、各个项目的前三名或前五名的成绩;2。能统计各学校总分;3。可以按学校编号、学校总分、男女团体总分排序输出;4。可以按学校编号查询学校某个项目的情况;可以按项目编号查询取得前三或前五名的学校。5.键盘输入的比赛成绩信息,保存在文件中,下次运行程序可以直接查询,不需要再次输入成绩信息。实现提示:可以假设n不大于20,m不大于30,w不大于20,姓名长度不超过20个字符。每个项目结束时,将其编号、类型符号(区分取前5名还是前3名)输入,并按名次顺序输入运动员姓名、校名(和成绩)3、学生成绩管理系统问题描述:该系统实现对若干个大学生的学习成绩进行管理。至少包括以下信息:学号、姓名、科目、成绩,学期。学

14、期取值范围可为18。功能要求:1使用中文菜单;2. 将学生信息保存在文本文档中,具体对学生信息进行插入删除查询操作时,将保存在文本文档中的学生信息提取出来,保存在链表中,然后再对链表进行操作,所有操作完成,或者在相应的命令后,再将学生信息保存到文本文档中。3具有数据输入功能;4具有数据删除功能;5具有多种查询(如按学号查询、按姓名查询、按成绩查询等)及输出功能;6其它功能(如各种统计)说明:功能各方面越完善越好4、简易客房管理系统问题描述:该系统能简单实现对客栈的住宿情况进行管理。至少包括以下信息:房号、房型、单价(每床)、已住人数;住客姓名、性别、年龄、身份、身份证号码,房号,床号,入住日期

15、、入住时间、离店日期、离店时间。这些信息应存放在两个文件中,分别是客房信息文件、住客信息文件。“房型”可取值1-8,分别表示单人间、双人间.。功能要求:1具有建立数据库(客房信息文件、住客信息文件)功能;2具有数据输入功能;3具有数据修改功能4具有数据删除功能;5能查询一些基本信息(如按房号查询、按姓名查询等);6具有多种统计功能(要求有一定的实用性)(如某客房当前有那些空床、某住客应付多少费用、某天住店总人数和总收入等)5、其他类型管理系统人事档案管理系统图书管理系统进销存货物管理系统职工工资管理系统基本要求:1上述类型的管理系统题目需要自己作相关的需求分析,设计并完成相应的功能,完成的系统

16、必须具有一定的实用功能。2设计良好的数据结构,代码编写时不允许运用现有的数据库管理系统,具体功能应通过对文件的读写操作实现。6、稀疏矩阵运算器根据以下描述编写一个程序,使其能完成对稀疏矩阵的压缩与还原,即给定稀疏矩阵可以压缩存储一个三元组,并且能根据这个三元组能还原这个稀疏矩阵。一个矩阵含有非零元素比较少,而零元素相对较多,这样的矩阵称为稀疏矩阵,对稀疏矩阵的存储我们不用完全的二维数组来存储,可以用一个三元组,即任意一个稀疏矩阵可以用一个只有三列的二维数组来存放,这样可以大大节省存储空间,提高计算效率,如 1 0 0 0 02 0 0 0 00 0 0 0 40 0 0 5 0Com

17、press3=3, 5 ,3 0, 0, 1 1, 0, 2 2, 4, 4 3, 3, 5 还原压缩   其 Compress3这个称为三元组,他是一个含有多行的只有三列的矩阵,其中第0行数据分别表示该稀疏矩阵的行数,列数和非零元素个数。以后每行表示一个非零元素的行数,列数和非零元素值,如:第3行中的2,4,4代表稀疏矩阵中的非零元素4在第2行,第4列,其值是4。基本功能要求:(1)用上述描述的三元组表示稀疏矩阵,实现两个矩阵相加、相减和相乘的运算。稀疏矩阵的输入形式采用三元组表示,而运算结果的矩阵则以通常的阵列形式列出(2)求出A的转置矩阵D,输出D。7、表达

18、式的求值   问题描述:表达式计算是实现程序设计语言的基本问题之一,也是栈的应用的一个典型例子。设计一个程序,演示用算符优先法对算术表达式求值的过程基本要求:以字符序列的形式从终端输入语法正确的,不含变量的整数表达式。利用算符优先关系,实现对算术四则混合运算表达式的求值,并演示在求值中运算符栈、运算数栈、输入字符和主要操作的变化过程。测试数据:3*(7-1); 1+2+3+4; 881*5; 1024/4*8; (20+2)*(6/2) 33-3; 8/(9-9); 2(6+2(3+6*(6+6); ((6+6)*6+3)*2+6)2实现提示:(1)设置运算符栈和运算数栈辅助分析算符

19、优先关系(2)在读入表达式的字符序列的同时,完成运算符和运算数(整数)的识别处理,以及相应的运算(3)在识别出运算数的同时,要将棋字符序列形式转换为整数形式(4)在程序的适当位置输出运算符栈、运算数栈、输入字符和主要操作的内容。算法基本思想:为了实现算符优先算法,可以使用两个工作栈.一个称做OPTR,用以寄存运算符;另一个称做OPND,用以寄存操作数或运算结果。算法的基本思想是:(1)首先置操作数栈为空栈,表达式起始符“”作为运算符栈的栈底元素(2)依次读入表达式的每个字符,若是操作数则进入OPND栈,若是运算符,则和OPTR栈的栈顶运算符比较优先权后做相应操作(栈顶元素优先权低则压栈,栈顶元

20、素优先权高或者相等(比如5*6/9)则退栈并将运算结果入栈,“”优先级最低),直至整个表达式求值完毕(即OPTR栈的栈顶元素和当前读入的字符均为“#”) 8、长整数的四则运算 问题描述:设计一个实现任意长的整数进行加法运算的演示程序基本要求:利用双向循环链表实现长整数的存储,每个结点含一个整型变量。任何整型变量的范围是(2151)(2151)。输入输出形式:按照中国对于长整数的表示习惯,每四位是一组,组间用逗号隔开测试数据:(1)0;0;应输出“0”(2)2345,6789;7654,3211;应输出“1,0000,0000”(3)9999,9999;1,0000,0000,0000;应输出“

21、9999,0000,0001”(4)1,0001,0001;1,0001,0001;应输出“0"(5)1,0001,0001;1,0001,0000;应输出“1”(6)9999,9999,9999;9999,9999,9999;应输出“1,9999,9999,9998”(7)1,0000,9999,9999;1;应输出“1,0001,0000,0000"实现提示:(1)每个结点中可以存放的最大整数为215132767,才能保证两数相加不会溢出。但若这样存,即相当于按32768进制数存,在十进制数与32768进制数之间的转换十分不方便。故可以在每个结点中仅存十进制数的4位,即

22、不超过9999的非负整数。整个链表是为万进制数.(2)可以利用头结点数据域的符号代表长整数的符号。用其绝对值表示元素结点数目。相加过程中不要破坏两个操作数链表.两操作数的头指针存于指针数组中是简化程序结构的一种方法。不能给长整数位数规定上限。9校园导游咨询 问题描述:设计校园导游程序,为来访的客人提供服务。 基本要求: (1)假设有一所校园的平面图,所含景点不小于10个。以图中顶点表示校内各景点,存放景点名称、代号、简介等信息;以边表示路径,存放路径长度等相关信息(2)为来访的客人提供图中任意景点相关信息的查询; (3)为来访的客人提供图中任意景点的问路查询,即查询任意两个景点之间的一条最短的

23、简单路径; (4)必须具有校园平面图的修改和扩充功能(即某些景点坐标的修改和景点个数的增加).10 停车场管理附录一:编程规范随着软件产品的功能增加和版本的提高,代码越来越复杂,源文件也越来越多,对于软件开发人员来说,除了保证程序运行的正确性和提高代码的运行效率之外,规范风格的编码会对软件的升级、修改、维护带来极大的方便性,也保证程序员不会陷入“代码泥潭”中无法自拔。开发一个成熟的软件产品,除了有详细丰富的开发文档之外,必须在编写代码的时候就有条不紊,细致严谨。 以下的编码规范包含了程序排版、注释、命名、可读性、变量、程序效率、质量保证、代码编译、代码测试和版本控制等注意事项。 一、排版: 1

24、。关键词和操作符之间加适当的空格。 2。相对独立的程序块与块之间加空行 3.较长的语句、表达式等要分成多行书写. 4。划分出的新行要进行适应的缩进,使排版整齐,语句可读. 5。长表达式要在低优先级操作符处划分新行,操作符放在新行之首。 6。循环、判断等语句中若有较长的表达式或语句,则要进行适应的划分。 7。若函数或过程中的参数较长,则要进行适当的划分. 8。不允许把多个短语句写在一行中,即一行只写一条语句. 9.函数或过程的开始、结构的定义及循环、判断等语句中的代码都要采用缩进风格。 10。C/C+语言是用大括号'和'界定一段程序块的,编写程序块时和各独占一行并且位于同一列,同

25、时与引用它们的语句左对齐。在函数体的开始、类的定义、结构的定义、枚举的定义以及if、for、do、while、switch、case语句中的程序都要采用如上的缩进方式。 二、注释 1.注释要简单明了。 2。边写代码边注释,修改代码同时修改相应的注释,以保证注释与代码的一致性。 3.在必要的地方注释,注释量要适中。注释的内容要清楚、明了,含义准确,防止注释二义性。保持注释与其描述的代码相邻,即注释的就近原则。 4.对代码的注释应放在其上方相邻位置,不可放在下面。 5.对数据结构的注释应放在其上方相邻位置,不可放在下面;对结构中的每个域的注释应放在此域的右方;同一结构中不同域的注释要对齐。 6.变

26、量、常量的注释应放在其上方相邻位置或右方。 7。全局变量要有较详细的注释,包括对其功能、取值范围、哪些函数或过程存取它以及存取时注意事项等的说明。 8。在每个源文件的头部要有必要的注释信息,包括:文件名;版本号;作者;生成日期;模块功能描述(如功能、主要算法、内部各部分之间的关系、该文件与其它文件关系等);主要函数或过程清单及本文件历史修改记录等。 9。在每个函数或过程的前面要有必要的注释信息,包括:函数或过程名称;功能描述;输入、输出及返回值说明;调用关系及被调用关系说明等。 三、命名 1.较短的单词可通过去掉“元音”形成缩写; 2。较长的单词可取单词的头几发符的优先级,并用括号明确表达式的

27、操作顺序,避免使用默认优先级。 3.使用匈牙利表示法 四、可读性 1.避免使用不易理解的数字,用有意义的标识来替代。 2。不要使用难懂的技巧性很高的语句。 3。源程序中关系较为紧密的代码应尽可能相邻。 五、变量 1。去掉没必要的公共变量。 2.构造仅有一个模块或函数可以修改、创建,而其余有关模块或函数只访问的公共变量,防止多个不同模块或函数都可以修改、创建同一公共变量的现象。 3.仔细定义并明确公共变量的含义、作用、取值范围及公共变量间的关系。 4.明确公共变量与操作此公共变量的函数或过程的关系,如访问、修改及创建等. 5。当向公共变量传递数据时,要十分小心,防止赋与不合理的值或越界等现象发生

28、. 6.防止局部变量与公共变量同名。 7。仔细设计结构中元素的布局与排列顺序,使结构容易理解、节省占用空间,并减少引起误用现象。 8.结构的设计要尽量考虑向前兼容和以后的版本升级,并为某些未来可能的应用保留余地(如预留一些空间等)。 9.留心具体语言及编译器处理不同数据类型的原则及有关细节. 10.严禁使用未经初始化的变量。声明变量的同时对变量进行初始化。 11。编程时,要注意数据类型的强制转换。 六、函数、过程 1.函数的规模尽量限制在200行以内。 2。一个函数最好仅完成一件功能. 3.为简单功能编写函数. 4.函数的功能应该是可以预测的,也就是只要输入数据相同就应产生同样的输出。 5.尽

29、量不要编写依赖于其他函数内部实现的函数。 6.避免设计多参数函数,不使用的参数从接口中去掉。 7.用注释详细说明每个参数的作用、取值范围及参数间的关系. 8。检查函数所有参数输入的有效性。 9。检查函数所有非参数输入的有效性,如数据文件、公共变量等。 10。函数名应准确描述函数的功能。 11.避免使用无意义或含义不清的动词为函数命名 12.函数的返回值要清楚、明了,让使用者不容易忽视错误情况。 13.明确函数功能,精确(而不是近似)地实现函数设计. 14。减少函数本身或函数间的递归调用。 15.编写可重入函数时,若使用全局变量,则应通过关中断、信号量(即P、V操作)等手段对其加以保护。 七、可

30、测性 1。在编写代码之前,应预先设计好程序调试与测试的方法和手段,并设计好各种调测开关及相应测试代码如打印函数等. 2。在进行集成测试/系统联调之前,要构造好测试环境、测试项目及测试用例,同时仔细分析并优化测试用例,以提高测试效率。 八、程序效率 1。编程时要经常注意代码的效率。 2。在保证软件系统的正确性、稳定性、可读性及可测性的前提下,提高代码效率。 3。不能一味地追求代码效率,而对软件的正确性、稳定性、可读性及可测性造成影响。 4.编程时,要随时留心代码效率;优化代码时,要考虑周全。 5。要仔细地构造或直接用汇编编写调用频繁或性能要求极高的函数。 6。通过对系统数据结构划分与组织的改进,

31、以及对程序算法的优化来提高空间效率。 7。在多重循环中,应将最忙的循环放在最内层。 8。尽量减少循环嵌套层次。 9.避免循环体内含判断语句,应将循环语句置于判断语句的代码块之中。 10.尽量用乘法或其它方法代替除法,特别是浮点运算中的除法。 九、质量保证 1。在软件设计过程中构筑软件质量。 代码质量保证优先原则 (1)正确性,指程序要实现设计要求的功能。 (2)稳定性、安全性,指程序稳定、可靠、安全。 (3)可测试性,指程序要具有良好的可测试性。 (4)规范/可读性,指程序书写风格、命名规则等要符合规范。 (5)全局效率,指软件系统的整体效率。 (6)局部效率,指某个模块/子模块/函数的本身效

32、率. (7)个人表达方式/个人方便性,指个人编程习惯. 2。只引用属于自己的存贮空间。 3.防止引用已经释放的内存空间。 4。过程/函数中分配的内存,在过程/函数退出之前要释放。 5。过程/函数中申请的(为打开文件而使用的)文件句柄,在过程/函数退出前要关闭。 6.防止内存操作越界. 7.时刻注意表达式是否会上溢、下溢. 8.认真处理程序所能遇到的各种出错情况。 9。系统运行之初,要初始化有关变量及运行环境,防止未经初始化的变量被引用。 10。系统运行之初,要对加载到系统中的数据进行一致性检查。 11.严禁随意更改其它模块或系统的有关设置和配置。 12.不能随意改变与其它模块的接口。 13。充

33、分了解系统的接口之后,再使用系统提供的功能。 14。要时刻注意易混淆的操作符。当编完程序后,应从头至尾检查一遍这些操作符。 15.不使用与硬件或操作系统关系很大的语句,而使用建议的标准语句. 16.建议:使用第三方提供的软件开发工具包或控件时,要注意以下几点: (1)充分了解应用接口、使用环境及使用时注意事项。 (2)不能过分相信其正确性. (3)除非必要,不要使用不熟悉的第三方工具包与控件。 十、代码编译 1.编写代码时要注意随时保存,并定期备份,防止由于断电、硬盘损坏等原因造成代码丢失。 2。同一项目组内,最好使用相同的编辑器,并使用相同的设置选项。 3.合理地设计软件系统目录,方便开发人

34、员使用. 4。打开编译器的所有告警开关对程序进行编译。 5。在同一项目组或产品组中,要统一编译开关选项。 6。使用工具软件(如Visual SourceSafe)对代码版本进行维护。 十一、代码测试、维护 1.单元测试要求至少达到语句覆盖。 2.单元测试开始要跟踪每一条语句,并观察数据流及变量的变化。 3.清理、整理或优化后的代码要经过审查及测试。 4。代码版本升级要经过严格测试。附录二:课程设计说明书格式要求课程设计说明书的重要性课程设计说明书主要是用于说明自己的设计思想、设计方法以及设计过程等,是对自己所作工作的总结,并使得他人了解自己的工作。它反映出设计者的设计能力,也是学习态度的一个重

35、要体现.在今后的学习和工作中,大家也会经常需要撰写各种设计或说明文档,这也是表达能力和问题处理能力的一种重要体现。指导教师通过设计说明文档,对学生完成课程设计的情况会有进一步的详细了解,在给予课程设计成绩时,课程设计说明书也会起到很重要的作用,占到相当大的比重。根据历来的实验报告、课程设计说明书、各级各类学科或专业竞赛过程中的论文部分以及毕业设计论文等的情况来看,许多同学的设计文档的撰写能力极其欠缺,格式混乱、病句连篇、详略不当、敷衍塞责等各类问题比比皆是,从形式到内容上都一塌糊涂,这已经成为同学们当中的一种普遍情况。作为工科学生,这种表述能力的欠缺,其实是个人能力的一种重大缺失和不足。因此务

36、必请同学们认真对待这项工作,不仅努力获得这一项成绩,更从中得到锻炼,提升这方面的能力。课程设计说明书的具体格式规定一、纸张和页面要求A4纸打印(手写的用学院标准课程设计说明书用纸);页边距要求如下:左边距为2.5厘米,上、下、右边距各为2厘米;行间距取固定值(设置值为18磅);字符间距为默认值(缩放100,间距:标准)。二、装订页码顺序(1)封面,(2) 目录(注明页码),(3) 正文,(4) 参考文献。 装订线要求在页面左边.三、章节序号按照正式出版物的惯例,章节序号的级序规定如下:1、1.1、1。1。1、(1)、四、封面采用统一规格,请参考所提供的模板文档中所给出的封面格式.五、目录三号、黑体、居中、目录两字空四格、与目录的正文空一行。六、正文正文的页数不少于10页(不包括封面、目录、参考文献等),正文字数不少于5000。正文的章节目序号按照正式出版物的

温馨提示

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

评论

0/150

提交评论