📄 ysfh.cpp
字号:
#include <stdio.h>
#include "stdlib.h"
struct cir
{
int data;
struct cir *next;
};
void main()
{
struct cir *sl,*u,*p;
int n,m,i,t; //n是持有密码卡的人数,m是报数上限,i是表中元素
printf("请输入持有密码卡的人数:\n");
scanf("%d",&n);//输入n
printf("\n密码排列为:\t");
for(t=1;t<=n;t++)
{
printf("%4d\t",t);
}
printf("\n\n请输入报数上限:\n");
scanf("%d",&m);//输入m
sl=u=(struct cir *)malloc(sizeof(struct cir));//初始化
sl->data=1;
for(i=2;i<=n;i++)//形成其余n-1个元素
{
u->next=(struct cir *)malloc(sizeof(struct cir));
u=u->next;
u->data=i;
}
u->next=sl;
printf("\n出列的人的密码依次为:\t");
while(n)
{
for(i=1;i<m;i++)
u=u->next;
p=u->next;
u->next=p->next;
printf("%4d\t",p->data);
free(p);//释放空间
n--;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -