擦数游戏数据结构课程设计报告.doc_第1页
擦数游戏数据结构课程设计报告.doc_第2页
擦数游戏数据结构课程设计报告.doc_第3页
擦数游戏数据结构课程设计报告.doc_第4页
擦数游戏数据结构课程设计报告.doc_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

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

文档简介

- 1 - 数据结构课程数据结构课程 设计报告设计报告 擦擦 数数 游游 戏戏 班班 级级:软件 092 姓姓 名名: 指导教师指导教师: 成成 绩绩:_ 年 月 日 - 2 - 摘要摘要: : 随着计算机技术的飞速发展,数据结构在计算机领域内显的尤为重要。而数 据结构这门学科,根据数据的不同结构和组织方法以及进行数据处理的不同算法, 通过分析和比较选择出较好的设计方案。 擦数游戏这道题目,对算法和编程能力都有很高的要求。这正体现出了此次数 据结构课程设计的特点。 对此题,首先要建立一个合适的数学模型,根据数学模型用 c 语言编程。 建立的数学模型,要求计算平均数的方法,而此题的平均数分子和分母都要求 是整数,这就要对分子和分母进行约束。 在用 c 语言编程的时候,要用到的语句主要有判断语句,输入和输出语句等。 关键词:数据结构,数学模型,算法,c 语言编程 - 3 - 目目录录 1.引言引言 .- 4 - 2.需需求求分析:分析: .- 5 - 3.概要设计概要设计 .- 5 - 3.1 课程设计流程图课程设计流程图- 5 - 3.2 主要的数据结构及完成本课程设计所用的方法主要的数据结构及完成本课程设计所用的方法.- 6 - 4.详细设计详细设计 .- 7 - 4.14.1 建立数学模型建立数学模型- 7 - 4.24.2 编写程序实现建立的数学模型编写程序实现建立的数学模型.- 8 - 4.3 程序各个部分的说明程序各个部分的说明- 10 - 5.测试结果测试结果 .- 11 - 6.调试分析调试分析 .- 13 - 7.设计体会设计体会 .- 15 - 8.结束语结束语 .- 16 - 9.参考文献参考文献 .- 16 - - 4 - 擦数游戏擦数游戏 1.引言引言 本次课程设计的目的本次课程设计的目的:是对数据结构所学内容的进一步的理解与巩固,是将计 算机课程与实际问题相联接的关键步骤。通过课程设计,能够提高分析问题、 解决问题,从而运用所学知识解决实际问题的能力。 实验环境实验环境:window 2000 及以上,c-free 所有版本,turbo2.0 实验的任务要求实验的任务要求: 任务:任务: 对擦数游戏建立数学模型,找合适的工具编写程序 要求:要求: 1. 完成需求分析 2. 建立数学模型 3. 用 c 语言编写程序 4. 调试 2.需求分析:需求分析: 在黑板上从 1 开始写出一组连续的自然数,然后擦去其中的一个数 k,其余的 - 5 - 数的平均值为 a/b(a,b 为整数)。试编写程序求出被擦去的数 k。 仔细阅读题目,就可以发现这道题目对算法的要求比较高,正好能体现这次 数据结构课程设计的目的。 在软硬件方面对系统的需求,软件要求易学,界面友好,容易掌握,因此可以选用 c- free3.5。硬件的配置要求也不需要很高,学校提供的机房就行了 3.概要设计概要设计 3.1 课程设计流程图课程设计流程图 开始 输入最后一个自然数 n 输入删除数 k 后的平均值 a/b 你输入的平均数错误 是 否 (n-1)%b=0 (p-n)/(n-1)/b) int main() int n,k,a,b,i,j,q; int p=0; printf(“-|n“); printf(“ 请输入这组自然数的最后一个数:“); scanf(“%d“, if(nq) - 9 - printf(“-|n“); printf(“ 在这组数中 a 不可能为这个数!n“); else k=p-a*(n-1)/b); printf(“ 则所删除的数 k 为%dn“,k); printf(“-|n“); 4.3 程序各个部分的说明程序各个部分的说明 (1)定义变量定义变量 int n,k,a,b,i,j,q; int p=0; (2)计算这组数的总和计算这组数的总和 for(i=1;iq) printf(“-|n“); printf(“ 在这组数中 a 不可能为这个数!n“); else k=p-a*(n-1)/b); - 11 - printf(“ 则所删除的数 k 为%dn“,k); printf(“-|n“); (5)输出被删除的数输出被删除的数 k k=p-a*(n-1)/b); printf(“ 则所删除的数 k 为%dn“,k); 5.测试结果测试结果 任选三组数来测试程序的可行性。 (1) - 12 - (2) (3) 程序运行结果正确。 - 13 - 6.调试分析调试分析 1.输入的 n 不是自然数: 2.输入 n 为自然数,b 不是(n-1)的约数 3.输入 n 为自然数,b 是(n-1)的约数,但 a 不在(p-n)/(n-1)/b)=a=(p-1)/(n-1)/b)这 个范围内: - 14 - 4.输入的 n 为自然数,平均数 a/b 也符合条件,就可以得到被删除的数 k - 15 - 5.在调试过程中还发现,当输入的 n 过大时,由于计算机配置,结果在运行的过程 中得不到预期的结果: 7.设计体会设计体会 经过这次课程设计,我对数据结构这门课程有了进一步的理解,对 c 编程有 了一定的提高。另外也提高了我分析问题、解决问题,从而运用所学知识解决实 际问题的能力。 就比如数我做的这题,擦数游戏。初看题目,很简单的一个数学问题,但是 再看题目,就会发现简单的数学题目,用计算机实现就有难度了。因为计算机语 言跟现实中的语言是有差别的,需要把数学的算法转换成数据结构算法,再编程 实现。 通过这次课程设计,我发现了自己平时学数据结构这门课还有很多没有注意 到的地方。虽然说这次的课题顺利完成了,但我对数据结构这门课的学习还没有 完成,以后还必须对数据结构进行复习巩固。 以前在数据结构这门课上,我学到的仅仅是理论知识,但这次的课程设计让 我感受到课上的东西用到实际问题的难处。在今后对计算机方面知识的学习中, 我要注意理论联系实际,这样才可以把学到的东西运用出来,真正的做到学以致 用! - 16 - 8.结束语结束语 感谢我的数据结构老师董跃华在以往的基础课学习中为我打下良好的基础, 这是我这次课程设计能够顺利完成的前提。 感谢学校能够给我们提供这么好的机房,使我有地方上网查资料,能

温馨提示

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

评论

0/150

提交评论