- 1、本文档共8页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
郭艳慧 实验一 线性表 08-10-20
PAGE
PAGE 4
《数据结构》实验报告
班级:
姓名:
学号:
日期: 08-10-20
题目: 约瑟夫环
上机实验的问题和要求:
问题描述:
编号为1到n的n个人围成一圈,每人带一个密码c,以m为报数上限。然后从第一个人开始顺时针自1开始报数,报到m的人出列,将其密码作为新的m值,从他的下一个人开始,同样顺时针自1开始报数,依次循环下去,直到所有的人都出列!要求得到依次出列的那些人的编号序列!
基本要求:
用C代码实现此活动,要求使用一定的算法进行操作,并最终通过程序运算出最后的结果!
二、程序设计的基本思想,原理和算法描述:
(包括程序的模块结构,数据结构,输入/输出设计,符号名说明等)
基本思想:
利用不带头结点单向循环链表模拟该活动,在实现了一切动作之后,运用一定的算法得到最终的结果。
程序的模块结构:
定义了相关的结构体之后,主要有以下几大模块:
建立由头指针指示的有n个结点的不带头结点的单向循环链表crt_CLinkList(H,n);
寻找、输出、删除H单循环链表的第m个结点locfor(H,m);
最后通过main函数体处理参数的输入与显示,并调用以上两函数,最终解决问题。
主要数据结构:
单链的循环链表,即线性表的链式存储结构。
算法的伪码描述:
结构体定义如下:
typedef struct Lnode /*定义单链表*/
{
int number; /*编号*/
int cipher; /*密码*/
struct Lnode *next; /*指针*/
}Lnode,*CLinklist; /*重定向命名*/
CLinklist H; /*H为全局单链表*/
算法的实现详见源程序。
输入/输出设计
本程序并未采用任何二进制文件出入的方式,这点说明将在最后总结提到。至于函数的出入口问题,在源程序及注释中将得到详细说明,这里不再赘述。
三、源程序及注释:
(说明函数功能、入口及出口参数,其他)
#include stdio.h /* 头文件*/
#include stdlib.h
#include alloc.h
typedef struct Lnode /*定义单链表*/
{
int number; /*编号*/
int cipher; /*密码*/
struct Lnode *next; /*指针*/
}Lnode,*CLinklist; /*重定向命名*/
CLinklist H; /*H为全局单链表*/
struct Lnode *crt_CLinkList(CLinklist H,int m) /*创建一个不带头结点的单向循环链表*/
{ /*其中,H为全局单链表,m为链表结点总数*/
int i; /*循环记数用*/
struct Lnode *ptr1; /*用于索引*/
if((ptr1=(struct Lnode *)malloc(sizeof(struct Lnode)))==NULL) /*一旦动态内存分配失败,报错退出!*/
{
perror(malloc);
return ptr1;
}
H=ptr1; /*形成单个结点的单循环链表*/
ptr1-next=H;
for(i=1;im;i++) /*形成m个结点的不带头结点的单
您可能关注的文档
- 三年级英语上册recycle 2 第二课时教案.doc
- 实验四 动物细胞的传代培养.doc
- 物理化学实验报告册.doc
- 实验动物房使用申请表.doc
- erp实验报告完整版.doc
- 反对三股势力和两面人的发声亮剑发言材料精选4篇.doc
- 高级语言程序设计(VB)实验报告.doc
- 实验报告3:差热分析实验.doc
- 探究型学习活动设计 英语阅读的探究式课堂教学计划.doc
- 局部解剖实验报告_脊柱区.doc
- 2025届河南省洛阳市、许昌市3月高三年级综合模拟测试物理试题含解析.doc
- 2025届河南省三门峡市重点中学高考模拟金典卷物理试题(六)试题含解析.doc
- 2025届河南省豫南市级示范性高中高三下学期期末质量监测物理试题试卷含解析.doc
- 2025届衡水金卷高三5月学生学业能力调研考试物理试题含解析.doc
- 2025届湖北省十堰市第一中学高中毕业年级第二次质量预测物理试题含解析.doc
- 2025届湖南省常德市安乡县第一中学高三4月大联考物理试题理试题含解析.doc
- 2025届黑龙江省绥化市三校高三物理试题统练含解析.doc
- 2025届河北省辛集中学高三第一次模拟考试(内考)物理试题试卷含解析.doc
- 2025届河南省开封高级中学高三下学期3月10日周中测物理试题试卷含解析.doc
- 2025届河南省新乡市新誉佳高级中学高三物理试题下学期第二次模拟考试试题含解析.doc
文档评论(0)