當前位置:編程學習大全網 - 編程軟體 - 國王說編程

國王說編程

比如為什麽:

If(s1==0) /*如果s1為0,表示最後壹個人開始報數*/

s 1 =(s 1+m-1)% I;S1號;m後出;I .當前未出局的剩余人數;

/* VC++ 6.0已編譯。抱歉,由於系統原因,暫時不支持中文註釋。

代碼是英文的.....希望能看懂。

*/

# include & ltiostream & gt

使用命名空間std

void Cal_Out_Sort(int S_start,int m,int total);

//////////////////main()/////////////////////////////

void main()

{

int S_start,M,Total _ NO

cout & lt& lt”請為Total_NO輸入壹個數字:\ n”;

CIN & gt;& gtTotal _ NO//它有多少num

cout & lt& lt”請為M輸入壹個數字:\ n”;

CIN & gt;& gtm;//哪個要出

cout & lt& lt”請為S輸入壹個數字:\ n”;

CIN & gt;& gtS _ start//開始編號

Cal_Out_Sort(S_start,M,Total _ NO);

}

//////////////////排序///////////////////////////////

void Cal_Out_Sort(int S_start,int m,int total)

{

int * NO = new int[total];//對於數字1 ~總計

int * Out = new int[total];//輸出排序的數目

int S = S _ start-1;

int Now _ Total = total

for(int I = 0;我& lt總計;i++)

NO[I]= I+1;

int Out _ Count = 0;

while(Out _ Count & lt;總計-1)

{

s =(s+m)% Now _ Total;// s位置輸出

Out[Out _ count++]= NO[s];

for(int I = s;我& ltNow _ Totali++)

NO[I]= NO[I+1];

now _ Total-;

s-;

}

Out[Out _ Count]= NO[0];

for(I = 0;我& lt總計;i++)

cout & lt& ltout[I]& lt;& ltendl

}

  • 上一篇:如何正確的使用for循環?
  • 下一篇:莫奇萊計算機具有五大功能部件
  • copyright 2024編程學習大全網