文档详情

C++程序设计课程设计指导书.doc

发布:2018-05-24约10.04万字共127页下载文档
文本预览下载声明
C++程序设计课程设计指导书 计算机工程系 二OO九年二月 前 言 “C++程序设计”是计算机科学与技术、通信工程等专业最重要的一门专业基础课程,涉及知识点多,教、学难度非常大,往往费了大量时间而达不到预期效果。俗语说:学习的最好方法是实践。 本课程设计正是基于此目的,力求为学生提供一个理论联系实际的机会,通过布置一定难度的课题,要求学生独立完成。通过实践,建立课程设计的整体思想,锻炼编写程序、调试程序的能力,学习文档编写规范,培养独立学习、吸取他人经验、探索前沿知识的习惯,树立团队协作精神。 指导书中的综合选题可以分成几个小项目供学生分工合作,其中给出的代码已经有意识地予以变化或删减,在一些关键之处有意设置了一点错误,直接复制一般难以调试通过,或难以达到预期的目的。同学们应该加以分析,补充完整,并尽可能地增加功能。同学们应注意小组成员之间共同研究技术难题,培养团队协作精神。 书中给出的内容丰富,采用循序渐进的方式,提高能力 目 录 前 言 1 选题一 幻方 1 一、奇数阶幻方的制作 1 二、偶数阶幻方的制作 3 三、设计要求 6 选题二 矩阵操作 7 一、矩阵翻转 7 二、矩阵卷动 7 三、矩阵旋转 8 四、设计要求 9 选题三 汉诺塔 2 一、基本涵义 2 二、常规解法 2 三、设计要求 3 选题四 八皇后 4 一、基本涵义 4 二、设计要求 4 选题五 成绩管理 6 一、设计要求 6 二、参考代码 6 选题六 H编码 21 一、二元H码 21 二、m元H码 22 选题七 数据排序 25 一、基本概念 25 二、插入排序 25 三、交换排序 27 四、选择排序 29 五、归并排序 31 六、设计要求 32 选题八 数据查找 34 一、基本概念 34 二、顺序查找 34 三、二分查找 36 四、索引查找 38 五、散列查找 41 选题九 最短路径 52 一、图概念 52 二、图的表示方法 56 三、带权图的最短路径 58 四、设计要求 61 选题十 表达式求值 62 一、基本概念 62 二、栈的存储和运算 62 三、表达式求值 65 四、设计要求 68 五、参考代码(不能直接运行) 68 附录A 课程设计操作规程 73 一、课程设计的目的 73 二、实践环境与教学要求 73 三、实施原则、方案与步骤 73 四、课程设计报告要求 74 五、成绩评定规则 75 六、说明 75 附录B C/C++常用函数 77 B.1缓冲区操作函数 77 B.2字符分类函数 78 B.3数据转换函数 80 B.4目录控制函数 83 B.5文件处理函数 84 B.6数学函数 88 B.7输入和输出函数 93 B.8进程控制函数 108 B.9查找和分类函数 108 B.10字符串操作函数 109 选题一 幻方 所谓幻方,就是一个n行n列的正方形,共有n21、2、3、……、n2S,S称为幻和。当n为奇数时,称为奇数阶幻方n为偶数时,称为偶阶幻方。当n可被4整除时,称方为双偶幻方。当n不可被4整除时,称为单偶幻方。 多少年来,许多数学家都在研究这个古老而有趣的问题,试图找出一般的解法,但一般都是针对当n是奇数n是4的倍数n是奇数时的法1放在第一行中间一个格子里。依次将后一个数放到前一个数的右上格,如:将2放到1的右上格。将3放到2的右上格等等。奇数阶幻方的制作 连续摆数法例一个5×5 格子,由最上面一行中间一格开始,依次填1,2,3等等。下一个格子填在左上位置。但是要注意两点: 出了幻方的范围,右边接到左边,下边接到上边。 某一格右上已经有了数字,改填在这个格子的下面一格,然后延续前面的方法。 17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9 也不一定按照斜上方写字,可以走马步,或其他方法。下面用的是马步,得到的是泛对角幻方。 8 17 1 15 24 11 25 9 18 2 19 3 12 21 10 22 6 20 4 13 5 14 23 7 16 哪些“步子”是可行的,是的一个问题。 阶梯法 例以5阶为例。 第一步:画一个9×9的方格。如下斜着填数字。注意中间的5×5格子才是要作的幻方的位置,已经涂成了黄色。 5 4 10 3 9 15 2 8 14 20 1 7 13 19 25 6 12 18 24 11 17 23 16 22 21 第二步:黄色范围以外的数字,平移到黄色格子中没有数字的位置。 3 16 9 22 15
显示全部
相似文档