📄 houzixuandawang.cpp
字号:
#include "iostream.h"
#include "stdio.h"
#define M 7 //猴子总数
#define N 2 //报到第N个数的退出
typedef int ElemType;
struct LNode{
ElemType data;
LNode *next;
};
void main(){
LNode *head,*p,*q1;
p=new LNode;
head=p;
//给链表附初值
for(int i=0;i<M;i++)
{LNode *q=new LNode;
q->data=i+1;
p->next=q;
p=q;
}
//形成循环链表
p->next=head->next;
q1=head;
int a=1;
for (int j=1;;j++)
{if(q1==q1->next) //只剩一只猴子时输出编号
break;
if(a<N)
{
q1=q1->next;
a=a+1;}
//报到第N个数的退出
else if(a==N)
{//cout<<q1->next->data<<" ";
q1->next=q1->next->next;
a=1;}}
printf("猴王为第%d号\n",q1->data);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -