c语言猴子选大王指针,C语言描述怎么用循环队列实现猴子选大王
匿名用户
1级
2016-12-16 回答
#include
#include
typedef struct node//定义链表节点类型
{
int data;
struct node *next;
}linklist;
int main()
{
int i, n, k, m, total;
linklist *head, *p, *s, *q;
printf("请输入猴子总数:");// 读入问题条件
scanf("%d", &n);
printf("请输入开始计数的猴子数:");
scanf("%d", &k);
printf("请输入数:");
scanf("%d", &m);
head = (linklist*)malloc(sizeof(linklist)); // 创建循环链表,头节点也存信息
p = head;
p->data = 1;
p->next = p;
for (i = 2; i <= n; i++) //初始化循环链表
{
s = (linklist*)malloc(sizeof(linklist));
s->data = i;
s->next = p->next;
p->next = s;
p = p->next;
}
p = head;
for (i = 1; i
{
p = p->next;
}
total = n; // 保存节点总数
printf("\n失序:");
q = head;
while (total != 1) // 只剩一个节点时停止循环
{
for (i = 1; i
{
p = p->next;
}
printf("[%d] ", p->data); // 打印要删除的节点序号
while (q->next != p) // q 指向 p 节点的前驱
{
q = q->next;
}
q->next = p->next; // 删除 p 节点
s = p; // 保存被删除节点指针
p = p->next; // p 指向被删除节点的后继
free(s); // 释放被删除的节点
total--; // 节点个数减一
}
printf("\n\n 猴子王是第 [%d] 只\n\n", p->data);// 打印最后剩下的节点序号
free(p);
system("pause");
return 0;
}
c语言猴子选大王指针,C语言描述怎么用循环队列实现猴子选大王相关推荐
- c语言bb,bb平台,指针,c语言.doc
bb平台,指针,c语言.doc 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们的网址水印. 3.该文档 ...
- c语言定义node类型指针,C语言指针的概念
在计算机中,所有的数据都是存放在存储器中的.一般把存储器中的一个字节称为一个内存单元,不同的数据类型所占用的内存单元数不等,如整型量占2个单元,字符量占1个单元等,在前面已有详细的介绍.为了正确地访问 ...
- c语言使用node类型指针,C语言利用 void 类型指针实现面向对象类概念与抽象
不使用C++时,很多C语言新手可能认为C语言缺乏了面向对象和抽象性,事实上,C语言通过某种组合方式,可以间接性的实现面对对象和抽象. 不过多态和继承这种实现,就有点小麻烦,但是依然可以实现. 核心: ...
- c语言结构内部定义指针,C语言知识补漏(一)结构体指针以及位域定义
一.结构体指针 typedef struct { unsigned long int DATA; unsigned long int DIRECTION; unsigned long int INTE ...
- c语言2阶数组指针,C语言的指针(进阶篇章之二)
指针遇到数组,不得不说的"秘密" 说起数组array[i]来,我们都知道:数组名"array"是数组的唯一标识符,数组名代表数组首元素的地址. 而今天的主角-- ...
- c语言课后作业答案指针,C语言程序基础练习题带答案
C语言程序基础练习题带答案 C语言传递参数均是以值传递(pass by value),另外也可以传递指针(a pointer passed by value).下面是小编为大家搜索整理的C语言专项训练 ...
- c语言中转向的指针,C语言指针碎碎念
一个变量的地址称为该变量的指针. 一个变量专门用来存放另一个变量的地址(即指针),则称这个变量为指针变量. 指针和指针变量是两个截然不同的概念. int i = 3 :而且 i 被存储在内容的 200 ...
- c语言地址强制转为指针,C语言:指针类型强制性转换
C语言:指针类型强制性转换 标签:C语言 指针 强制性转换 by 小威威 1.引入 我们知道,每个变量都有对应的地址,地址的距离即为地址之差.然而,地址类型不同,也就不能进行减法运算.假如,我现在要求 ...
- c语言 字符串和数组指针,C语言数组与指针一本道来
数组与指针.png 指针的基础 注意本节内容可能在gcc下不能完成编译,请切换到Windows平台,使用dev-cpp或其他 指针本质上也是一个变量 指针要占用一定的内存空间(任何类型的指针的内存大小 ...
最新文章
- c# blockingcollections
- Azure进阶攻略丨如何驾驭罢工的Linux虚机网卡?
- React组件通信技巧
- 最高75K,至多可拿16薪,这个岗位成财富密码?
- httprunner框架学习总结
- Ubuntu设置环境变量
- Servlet---注解开发
- JBox2d入门学习一
- 安卓应用安全指南 5.5.3 处理隐私数据 高级话题
- 风变编程python网址_风变编程:职场学习Python的重要性
- Java学习笔记基础(中)
- 移植UE4的Spline与SplineMesh组件到Unity5
- 图书管理系统数据库设计
- 读书百客:《念奴娇·赤壁怀古》赏析
- Android手机游戏大全apk
- 双曲三角函数图像及计算
- 【011】疫苗接种管理系统
- Windows系统 cleanmgr命令详解,Windows命令行清理磁盘
- python爬取拉勾网给定关键词职位信息存入数据库_Python 爬取拉勾网python职位信息...
- 一分钟明白什么是“编程”,再也不会被程序员笑话了
热门文章
- 全网最详细 Python如何读取NIFTI格式图像(.nii文件)和 .npy格式文件和pkl标签文件内容
- SqlServer用SQL语句将查出的数据直接插入到另一个张的表中
- C# 中的 is 和 as 运算符 简单举例说明
- SQL Server和MysQL中的联表更新sql示例
- python函数式编程读取数据时出现错误_Python编程中,函数遇到问题是抛出错误好还是约定返回值好?...
- spring定时器突然不执行了_非标自动化设备之PLC定时器的时间和程序扫描周期
- php中cnum函数,PHP vprintf() 函数
- gossip 区块链_区块链中的P2P
- 百度编辑器图片上传 java_百度编辑器粘贴图片自动上传到服务器(Java版)
- java 最小生成树_图的最小生成树(java实现)