⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 monkey.txt

📁 猴子选大王代码 猴子选大王代码
💻 TXT
字号:
#include<stdio.h>
#include<stdlib.h>
typedef struct Node
{
 int data;
 struct Node *next;
}Node,*LinkList;

void CreatLinkList(LinkList *L,int m)// 创建循环链表 m为猴子总数
{
 Node *p, *q;
    int i;
(*L) = (LinkList)malloc(sizeof(Node));
 if ((*L) == NULL)
 {
  printf("memory allocation failed,goodbye");
  exit(1);
 }
p = (*L);
 p->data = 1;
 for (i = 2; i <= m; i++)
 {
  q = (LinkList)malloc(sizeof(Node));
        if (q == NULL)
  {
      printf("memory allocation failed,goodbye");
       exit(1);
}
     q->data = i;
  p->next = q;
  p = q;
 }
 p->next =(*L);
}
void xuandawang(LinkList *L, int n, int m)
{
 Node *p, *q;
    int k;
 int j = 1; 
p = (*L);
    
 for (; m > 1; m--)
 {
  k = 1;
  while (k != n)
  {
   p = p->next;
      k++;
  }
printf("第%d个出队列的是%d\n", j++, p->data);
  p->data = p->next->data;
  q = p->next;
  p->next = p->next->next;
        free(q);
 }
    printf("最终结果大王是第%d号猴子\n",p->data);
}
int main(void)
{
 int m, n;
    LinkList L;
 printf("请输入猴子总数和数到那个猴子出队:");
 scanf("%d%d",&m,&n);
    CreatLinkList(&L, m);
    xuandawang(&L, n, m);
 system("pause");
 return 0;  } 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -