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

📄 约瑟夫环.cpp

📁 一个关于约瑟夫环的程序
💻 CPP
字号:
#include<stdlib.h>
#include<iostream.h>

typedef struct LNode
{
	int num,pwd;
	struct LNode *next;
}LNode, *LinkList;

void main()
{
	int j,i,m,n,pass;
    cout << "请输入报数的上限: ";
    cin >> m;
	cout << "请输入人数: ";
	cin >> n;
    LinkList head,p,pt;
	cout << "请输入" << n << "个人的密码:";
    head = (LinkList)malloc(sizeof(LNode));
    p = head;
	cin >> pass;
	p->num = 1;
	p->pwd = pass;
    for(i=2;i<=n;i++){
		pt = (LinkList)malloc(sizeof(LNode));
		p->next = pt;
		p = pt;
		cin >> pass;
		p->num = i;
		p->pwd = pass;
	}
    pt->next = head;

	cout << "出列顺序为: ";
    for(i=1;i<=n;i++)
	{
		for(j=1;j<m;j++)
		{
				p = p->next;
		}
		pt = p->next;
		m = pt->pwd;
		if (i == n)
			cout << pt->num << "." << endl;
		else
			cout << pt->num << ", ";
		p->next = pt->next;
		free(pt);
		pt = p;
	}
}

⌨️ 快捷键说明

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