![]() |
#2
czsbc2011-09-17 22:03
![]() #include <iostream> using namespace std; typedef struct date { public: int num;//存放序号 int pwd;//存放密码 struct date *next; }dateNode; int main() { int i=1,a,m,n; date *p,*q,*head; head=new dateNode; cout<<"请输入人数的个数";//循环人数 cin>>a; if(a<0) cout<<"输入错误,请重新输入"; p=head; cout<<"密码必须为正整数"<<endl; for(i=1;i<=a;i++)//建立链表 { p->next=new dateNode; p=p->next; p->num=i; cout<<"请给"<<p->num<<"号人设置密码";//设置初始化数据 cin>>m; if(m<1) { cout<<"输入错误"; return 0; } p->pwd=m; // p=p->next; if(i==a) { p->next=head->next; break; } } cout<<"请输入第一个随机密码"; cin>>n; if(n<1) { cout<<"输入错误"; return 0; } q=p=head->next; for(i=1;i<=a;i++) { cout<<p->num<<" "<<p->pwd<<endl; p=p->next; } delete head; for(i=1;i<=n;i++)//显示出列人的序号 { head=p; if(n==1) { while(head->next!=p) head=head->next; n=2; p=head; } if(i==n-1) { q=p->next; n=q->pwd;//保存该序号人的密码 cout<<"出列人的序号:"; cout<<q->num<<endl; p->next=q->next;//将前一个结点和后一个结点连接起来 delete q;//释放结点 p=p->next; i=0;//初始化i的值 continue; } p=p->next; if(p==p->next) { cout<<"出列人的序号:"; cout<<p->num<<endl; delete p; break; } } //system("pause"); return 0; } [ 本帖最后由 czsbc 于 2011-9-17 22:20 编辑 ] |
#include <iostream>
using namespace std;
typedef struct date
{
public:
int num;//存放序号
int pwd;//存放密码
struct date *next;
}dateNode;
int main()
{
int i=1,a,m,n;
date *p,*q,*head;
head=new dateNode;
cout<<"请输入人数的个数";//循环人数
cin>>a;
if(a<0)
cout<<"输入错误,请重新输入";
p=head;
cout<<"密码必须为正整数"<<endl;
for(i=1;i<=a;i++)//建立链表
{
p->next=new dateNode;
p->num=i;
cout<<"请给"<<p->num<<"号人设置密码";//设置初始化数据
cin>>m;
if(m<1)
{
cout<<"输入错误";
return 0;
}
p->pwd=m;
p=p->next;
if(i==a)
{
p->next=head->next;
break;
}
}
cout<<"请输入第一个随机密码";
cin>>n;
if(n<1)
{
cout<<"输入错误";
return 0;
}
q=p=head;
for(i=1;i<=a;i++)
{
cout<<p->num<<" "<<p->pwd<<endl;
p=p->next;
}
for(i=0;i<=n;i++)//显示出列人的序号
{
if(i==n-1)
{
q=p;
n=p->pwd;//保存该序号人的密码
cout<<"出列人的序号:";
cout<<p->num<<endl;
p->next=q->next->next;//将前一个结点和后一个结点连接起来
p=p->next;
q=q->next;
delete q;//释放结点
i=0;//初始化i的值
continue;
}
p=p->next;
}
//system("pause");
return 0;
}
[ 本帖最后由 书生小白 于 2011-9-17 18:28 编辑 ]