您现在的位置:网站首页答辩论文计算机毕业设计计算机论文计算机软件

[课程设计] 猴子选大王

  • 简介: 原文 一. 需求分析:问题定义:m只猴子要选大王,选举方法如下:所有猴子按1,2,………m编号并按照顺序围成一圈。从第一个开始数,每数到第n个,该猴子就跳出圈外,如此循环报数,直到圈内剩下一只猴子时,这只猴子就是大王。m和n由键盘输入...
    • 请与管理员联系购买资料 QQ:5739126
  • 论文简介
  • 相关论文
  • 论文下载
原文

一. 需求分析:
问题定义:
m只猴子要选大王,选举方法如下:所有猴子按1,2,………m编号并按照顺序围成一圈。从第一个开始数,每数到第n个,该猴子就跳出圈外,如此循环报数,直到圈内剩下一只猴子时,这只猴子就是大王。m和n由键盘输入,打印出成为猴王的猴子号。
问题分析:
通过对“猴子选大王”问题的分析,由于本题目的数据元素的个数不可预知,所以使用链表。链表是动态的,可以在需要的时候增长和减小其长度,而数组是在编译时分配内存的,所以其大小是不可改变的,而且会出现内存浪费的情况。我认为单循环链表能较好的解决问题。在建立循环链表时,因为链表的大小由输入决定,因此与其匹配的结点数也是变化的,所以要进行动态内存分配。
限制条件;m>0;n>0。
研究意义:
单循环链表及动态存储的实现。
测试用例:
m=10;n=4;
最后求出成为猴王的猴子号。
结果:这群猴子的大王是5号猴子。
二. 总体设计:
采用的储存结构:单循环链表
抽象数据类型:
ADT struct
{对象数据=(整数)
操作对象:struct monkey *create()
建立链表
struct monkey *findout(start,n)
找出被淘汰的猴子的上一个
Struct monkey *letout(last)
删掉被淘汰的猴子,返回的指针值指向下一个猴子}
函数模块之间的调用:

......


  目录

1.封面 2.需求分析 3.示意图 4.总体设计 5.详细设计 6.编码 7测试结果 8.参考文献 9.用户手册


  参考资料

《c 程序设计教程》H.M.Deitel P.J.Deitel 著
《数据结构与算法分析——c语言描述》
Mark Allen Weiss 著

查看评论 已有0位网友发表了看法
  • 验证码: