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

📄 ch8_14.c

📁 C语言程序设计上机指导与练习 冶金工业出版社 刘怀亮
💻 C
字号:
/*CH8_14*/
/*约瑟夫(Joseph)问题*/
#include<stdio.h>
#define N 10
#define m 3
void main()
{
	int p[N];
	int lenth;
	int remain;
	int i;
	for(lenth=0;lenth<N;lenth++)
		p[lenth]=1;            			/* 初始化标记*/
	remain=N;                  			/* 初始化余下人数*/
	lenth=0;
	i=0;
	while(remain>1)           			/* 圈中多于1个人时循环继续*/
	{
		while(p[i]==0)i=(i+1)%N;		/* 从在圈的人开始数*/
		
		lenth=(lenth+1)%m;         
		if(lenth==0)            		/*退出圈*/
		{
			p[i]=0;             		/* 修改标记*/
			printf("%d%c",i+1, ' ');	/* 输出编号*/
			remain--;              		/* 余下人数减1*/
		}
		i=(i+1)%N;               		/* 准备数下一个*/
	}/*while*/
}/*main()*/






⌨️ 快捷键说明

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