本人用C++编写的约瑟夫环的小程序,望指教
#include
#include
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 { 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 pt=p;//找寻最后一个节点; for(i=1;i<=n;i++) { for(a=1;a { p=p->next; } pt=p->next; m=pt->pwd; cout< p->next=pt->next; free(pt); pt=p;//输出各人的编号; } }
- 上一篇:本人写的迷宫,不过知道这样才能输出所有的路径
- 下一篇:不规则窗体组件源代码