📄 aaa.cpp
字号:
#include "iostream.h"
struct info//声明一个info的结构类型
{
int Number;//定义小孩的编号
int Pw;//定义小孩的密码
info *next;//定义一个结构指针
};
void main()//主函数
{
cout<<"If you want help,please press 'h' key from your keyboard."<<endl;
cout<<"If you don't want any help,please press 'n' key to start the programme."<<endl;
switch(cin.get())
{
case'n':cout<<"下面请按照指令一步步作."<<endl;break;
case'h':cout<<" "<<"这里是帮助文档,首先屏幕上会出现要求你输入参加游戏小孩的总数,你必须输入一个大于'0'的正整数,接下来会要求你输入每个小孩手中的密码,你必须输入一个就回车,接着输入下一个,直到输入结束.然后要求你输入开始时候的密码,同样你输入一个数.以上所要求的数都必须是大于'0'的正整数,若不符合规定,则会要求你重新输入,直到你输入正确为止.2002.3"<<endl;break;
default:cout<<"Wrong!!!"<<endl;
}
int numboy,mima;
info *Head;
info *createinfo(int numberofboys);//声明创建链表的函数
void delinfo(int allboys,int newPw,info* head);//声明输出的函数
do//做一个循环以防用户输入0或负值等非法数值
{
cout<<"请输入参加游戏小孩的总数: "<<endl;
cin>>numboy;
}while(numboy<=0);
Head=createinfo(numboy);//创建链表
do
{
cout<<"请先输入游戏开始时的密码: "<<endl;
cin>>mima;
}while(mima<=0);
delinfo(numboy,mima,Head);//实现出列队员编号的输出,和删除节点
}
info *createinfo(int numberofboys)//创建一个返回值为结构指针的指针函数,用于创建链表
{
info *ps,*pend,*head;
int bianhao=1;
head=NULL;
pend=new info;
do
{
cout<<"请输入小孩的密码:"<<endl;
cin>>pend->Pw;
}while(pend->Pw<=0);
pend->Number=bianhao;
head=pend;
while(bianhao!=numberofboys)
{
bianhao++;
ps=new info;
cout<<"请输入下个小孩的密码:"<<endl;
cin>>ps->Pw;
ps->Number=bianhao;
pend->next=ps;
pend=ps;
}
pend->next=head;
cout<<"密码输入结束!"<<endl;
return head;
}
void delinfo(int allboys,int newPw,info* head)
{
info *ps,*pend,*pop;
int p=1;
ps=pend=head;
while(allboys>0)
{
while(p!=newPw)
{
pend=ps;
ps=ps->next;
newPw--;
}
pop=ps;
newPw=ps->Pw;
cout<<"小孩出列的编号: "<<ps->Number<<endl;
pend->next=ps->next;
ps=ps->next;
delete pop;
allboys--;
}
cout<<"本程序运行完毕!Written by zigz."<<endl;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -