WEB开发网
开发学院软件开发C++ 本人用C++编写的约瑟夫环的小程序,望指教 阅读

本人用C++编写的约瑟夫环的小程序,望指教

 2008-03-08 12:29:41 来源:WEB开发网   
核心提示:#include<stdlib.h>#include<iostream.h>typedef strUCt LNode{ int num,pwd; struct LNode *next;}LNode, *LinkList;void main(){ int a,i,m,n,j;//m为报数上限值,n
#include<stdlib.h>
#include<iostream.h> typedef strUCt LNode
{
 int num,pwd;
 struct LNode *next;
}LNode, *LinkList; void main()
{
 int a,i,m,n,j;//m为报数上限值,n为人数,j为输入的密码;
   cout<<"please enter m and n:";
   cin>>m>>n;
   LinkList head,p,pt;//head为头节点的指针,p为当前指针的前一指针,pt为当前指针;
   head=(LinkList)malloc(sizeof(LNode));
   p=head;
   for(i=1;i<n;i++)
 {
   pt=(LinkList)malloc(sizeof(LNode));
   p->next=pt;
 p=pt;
 }
   pt->next=head;
   pt=head;
 p=head;//建立n个节点;    cout<<"please enter the passWord:";
   for(i=1;i<=n;i++)
 {
   cin>>j;
   p->num=i;
   p->pwd=j;
 p=p->next;
 }
 pt=head;
 p=head;//输入各个人的密码;    for(i=1;i<n;i++)
 
 pt=p;//找寻最后一个节点;    for(i=1;i<=n;i++)
 {
   for(a=1;a<m;a++)
 {
    p=p->next;
 }
   pt=p->next;
   m=pt->pwd;
   cout<<pt->num;
 p->next=pt->next;
 free(pt);
 pt=p;//输出各人的编号; 
 }
}


Tags:本人 编写 约瑟夫

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接