大家帮我看看这道程序题错哪里?13人围成一圈,从第一个人开始顺序报号1,2,3.凡报到“3”者退出圈子,找出最后留在圈中的人,输出他的序号.#include #include using namespace std;struct node {int number;node *
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/28 11:23:33
![大家帮我看看这道程序题错哪里?13人围成一圈,从第一个人开始顺序报号1,2,3.凡报到“3”者退出圈子,找出最后留在圈中的人,输出他的序号.#include #include using namespace std;struct node {int number;node *](/uploads/image/z/3169592-8-2.jpg?t=%E5%A4%A7%E5%AE%B6%E5%B8%AE%E6%88%91%E7%9C%8B%E7%9C%8B%E8%BF%99%E9%81%93%E7%A8%8B%E5%BA%8F%E9%A2%98%E9%94%99%E5%93%AA%E9%87%8C%3F13%E4%BA%BA%E5%9B%B4%E6%88%90%E4%B8%80%E5%9C%88%2C%E4%BB%8E%E7%AC%AC%E4%B8%80%E4%B8%AA%E4%BA%BA%E5%BC%80%E5%A7%8B%E9%A1%BA%E5%BA%8F%E6%8A%A5%E5%8F%B71%2C2%2C3.%E5%87%A1%E6%8A%A5%E5%88%B0%E2%80%9C3%E2%80%9D%E8%80%85%E9%80%80%E5%87%BA%E5%9C%88%E5%AD%90%2C%E6%89%BE%E5%87%BA%E6%9C%80%E5%90%8E%E7%95%99%E5%9C%A8%E5%9C%88%E4%B8%AD%E7%9A%84%E4%BA%BA%2C%E8%BE%93%E5%87%BA%E4%BB%96%E7%9A%84%E5%BA%8F%E5%8F%B7.%23include+%23include+using+namespace+std%3Bstruct+node+%7Bint+number%3Bnode+%2A)
大家帮我看看这道程序题错哪里?13人围成一圈,从第一个人开始顺序报号1,2,3.凡报到“3”者退出圈子,找出最后留在圈中的人,输出他的序号.#include #include using namespace std;struct node {int number;node *
大家帮我看看这道程序题错哪里?
13人围成一圈,从第一个人开始顺序报号1,2,3.凡报到“3”者退出圈子,找出最后留在圈中的人,输出他的序号.
#include
#include
using namespace std;
struct node {int number;
node *next;
};
node * Head_Creat( )
{node *head,*n;
int a;
head=NULL;
for(a=1;anumber=a;
if(!head) head=n,n->next=head;
else n->next=head,head=n;
}
return head;
}
node * Delete_node(node *head)
{node *p1,*p2;
p2=p1->next;
while(p2!==NULL)
{for(int i=1;inext;
}
p1->next=p2->next;
delete p2;
cout
大家帮我看看这道程序题错哪里?13人围成一圈,从第一个人开始顺序报号1,2,3.凡报到“3”者退出圈子,找出最后留在圈中的人,输出他的序号.#include #include using namespace std;struct node {int number;node *
改了下:
#include
#include
using namespace std;
#define NUM 13
struct node
{
int number;
struct node *next;
};
node * Head_Creat( )
{
node *head,*n,*ptmp;
int a;
head=NULL;
for(a=NUM; a>0; a--)
{
n=new node;
n->number=a;
if(!head)
{
head=n,n->next=head;//头结点next置空
ptmp = head;
}
else
{
n->next=head,head=n;
ptmp->next = head;
}
}
return head;
}
node * Delete_node(node *head)
{
node *p1,*p2;
while (head->next !=head)
{
head = head->next;
p1 = head; //指向数2节点
head = head->next;
p2 = head; //指向待删除的节点
head = head->next; //指向下一个数1的节点
delete p2;
p1->next = head;
}
return head;
}
int main(void)
{
node *head;
head=Head_Creat();
cout