-
大小: 925B文件類(lèi)型: .cpp金幣: 2下載: 1 次發(fā)布日期: 2021-06-15
- 語(yǔ)言: C/C++
- 標(biāo)簽: 數(shù)組??約瑟夫環(huán)??
資源簡(jiǎn)介
編號(hào)為1,2,……,n的n個(gè)人按順時(shí)針?lè)较驀蝗Γ咳顺钟幸粋€(gè)密碼
(整數(shù),正負(fù)均可),一開(kāi)始任選一個(gè)正整數(shù)作為報(bào)數(shù)上限值m,從第一個(gè)人開(kāi)
始順時(shí)針(若密碼為負(fù),則逆時(shí)針)自一開(kāi)始順序報(bào)數(shù),報(bào)到m時(shí)停止報(bào)數(shù)。
報(bào)m的人出列,將他的密碼作為新的m值,從他在順時(shí)針?lè)较颍ㄈ裘艽a為負(fù),
則逆時(shí)針)上的下一個(gè)人開(kāi)始重新從1報(bào)數(shù),如此下去,直至所有人全部出列。
用c中的數(shù)組和鏈表方法可以求出出列的順序。
代碼片段和文件信息
#include
#include
#include
#define??N??10000
int?main()
?{
???int?p[N+1]a[N+1];
???int?nmtk;
???n=N;
printf(“n的值為:N\n“);
printf(“m的值為:“);
srand(time(NULL));
m=rand()?%N-N/2;
printf(“%d\n“m);
????printf(“密碼為:“);
srand(time(NULL));??????//生成隨機(jī)種子
for?(k=1;?k<=n;?k++)
{
? p[k]=?rand()?%?N-N/2;//隨機(jī)生成0到Max之間的一個(gè)整數(shù)
}
????p[0]=m;
for(t=1;t<=n;t++)//輸出密碼
{
printf(“%d??“p[t]
評(píng)論
共有 條評(píng)論