



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1.实验内容: 约瑟夫问题: n只猴子要选猴王,所有的猴子按照1,2,.n编号围成一圆,从第1还开始按1,2,.m报数,凡是报m的猴子退出圈外,如此循环直到圈内剩下一只猴子,这只猴子就是猴王。编写程序n和m由键盘输入。2.实验要求: (1.)用顺序表和单链表分别实现约瑟夫问题; (2.)实验报告要求:A.实验名称:线性表的应用 B.实验目的: a.掌握基本操作在顺序和链式存储上的实现; b.以各种操作(建立,插入,删除,遍历)为重点; c.掌握线性表的动态分配,顺序存储结构的定义以及基本操作的实现;d.通过本章实验帮助学生加深C语言的使用。(特别是函数的参数的调用,指针类型的调用和链表的建立等各种操作) C.实验内容:(问题的描述,算法的描述,程序清单,测试数据)方法一:#include#define size 100 /* 输入人数的上限 */void main() int personsize; int i, j,d=0; /* 循环修正变量 */ int arrayLen; /* 数组长度 */ int start, overNum; /* 开始位置各跨过位置 */ int deleNum; /* 出列人所在数组中的下标 */ int name, total; /* 输入时,人的信息以及人的总数 */ printf( 请输入圆桌上人的总数: ); scanf( %d, &arrayLen ); printf( n ); if( ( arrayLen size ) | ( arrayLen 0 ) ) printf( 超出范围,请重新输入: ); scanf( %d, &arrayLen ); printf( n ); ; printf( 请输入各个人的信息(以输入整数表示每个人相应的位置): n ); for( i = 0; i arrayLen; i+ ) printf( 第%d个人相应的位置所对应的整数: ,+d); scanf( %d, &name ); personi = name; printf( 你输入的数据的顺序为: ); for( i = 0; i , personi ); printf( %d n, personarrayLen - 1 ); printf( n ); printf( 你打算从第几个人开始? 请输入开始号: ); scanf( %d, &start ); printf( n); start = start - 1; printf( 请输入相邻两出列人之间的间隔: ); scanf( %d, &overNum ); printf( n ); total = arrayLen; printf( 程序运行后,出列人的顺序为:nn ); for( i = 0; i , persondeleNum ); for ( j = deleNum; j arrayLen; j+ ) /* 将出列元素后面的各元素前移 */personj = personj+1; start = deleNum; arrayLen = arrayLen - 1; /* 移动完毕后,数组长度减1 */ printf( nn );方法二:#include #include typedef struct list int data; struct list *next; linklist; void main() int n,m,k,i=1; linklist head,*p,*q,*l; printf(输入总猴子数n: );scanf(%d,&n); printf(n );printf(输入开始报数猴子m: );scanf(%d,&m); printf(n );printf(输入循环数k: );scanf(%d,&k); printf(n );l=&head; p=l; for(i=1;inext=q; q-data=i; p=q; p-next=l-next; /*创建循环表*/ p=l-next; for(i=1;inext; while(p-data!=p-next-data) for(i=1;inext; q=p-next; printf(%3d,q-data); p-next=q-next; p=q-next; /*p指向第k+1猴子的位置*/
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年建筑工程技术中级面试题及解析
- 2025年物联网高级职位面试技巧与模拟题
- 世界地图教学课件
- 2025年酒店管理实习生求职面试指南与模拟题集
- 电击伤急诊科处理
- 电催员基础知识培训课件
- 2025年初入金融行业人员面试模拟题及答案解析
- 血透护理教案
- 护理专业毕业论文范文
- 门脉高压病人护理
- 大连市甘井子区社区工作者招聘笔试真题2024
- 生产安全会议纪要
- 护理文书书写PDCA案例
- 哪个团队收益大+课件2025-2026学年+北师大版(2024)八年级数学上册
- 制作瓷器培训课件
- 初中情景教学法教案课件
- 旧物募捐活动方案
- 《中华人民共和国传染病防治法(2025年版)》解读
- 智慧城市建设的伦理考量与社会责任
- 幼儿发展评价手册使用培训
- 口腔门诊客服工作计划
评论
0/150
提交评论