早教吧作业答案频道 -->其他-->
根据源程序代码画出流程图利用循环链表求约瑟夫环出列顺序.要求编号为1、2、3……n的n个人按顺时针方向围坐一圈,每人持有一个密码(正整数).开始任选一个正整数作为报数上限m,从第一
题目详情
根据源程序代码画出流程图
利用循环链表求约瑟夫环出列顺序.要求编号为1、2、3……n的n个人按顺时针方向围坐一圈,每人持有一个密码(正整数).开始任选一个正整数作为报数上限m,从第一个人开始按顺时针方向自1开始顺序报数,报到m时停止报数,此时报m的人出列,并将他的密码作为新的m值,从他下一个人开始按顺时针方向重新从1报数.如此循环,直到所有的人全部出列为止.
源程序
#include
#include
struct Lnode /*定义链表*/
{int number;
int password;
struct Lnode *next;
}Lnode,*p,*q,*head;
int main(void)
{int n; /*n个人*/
int i;
int m; /*初始报数上限值*/
int j;
printf("please enter the number of people n:"); /*输入测试人的数量*/
scanf("%d",&n);
if(npassword));
p->number=i;
}
p->next=head; /*形成循环链表*/
p=head;
printf("please enter the number m:");
scanf("%d",&m);
printf("The password is:\n");
for (j=1;jpassword;
printf("%d ",p->number);
p->number=p->next->number; /*删除报m的节点*/
p->password=p->next->password;
q=p->next;
p->next=p->next->next;
free(q);
}
}
利用循环链表求约瑟夫环出列顺序.要求编号为1、2、3……n的n个人按顺时针方向围坐一圈,每人持有一个密码(正整数).开始任选一个正整数作为报数上限m,从第一个人开始按顺时针方向自1开始顺序报数,报到m时停止报数,此时报m的人出列,并将他的密码作为新的m值,从他下一个人开始按顺时针方向重新从1报数.如此循环,直到所有的人全部出列为止.
源程序
#include
#include
struct Lnode /*定义链表*/
{int number;
int password;
struct Lnode *next;
}Lnode,*p,*q,*head;
int main(void)
{int n; /*n个人*/
int i;
int m; /*初始报数上限值*/
int j;
printf("please enter the number of people n:"); /*输入测试人的数量*/
scanf("%d",&n);
if(npassword));
p->number=i;
}
p->next=head; /*形成循环链表*/
p=head;
printf("please enter the number m:");
scanf("%d",&m);
printf("The password is:\n");
for (j=1;jpassword;
printf("%d ",p->number);
p->number=p->next->number; /*删除报m的节点*/
p->password=p->next->password;
q=p->next;
p->next=p->next->next;
free(q);
}
}
▼优质解答
答案和解析
图已发请查收
看了根据源程序代码画出流程图利用循...的网友还看了以下:
VB编程:设有如下两组数据VB编程:设有如下两组数据A:2,7,7,6,27,70,25B:79, 2020-05-14 …
约瑟夫问题:n个骑士编号1,2,.,围坐圆桌旁找出最后留在圆桌旁的骑士编号(1)编编写一个函数模板 2020-06-06 …
请教C程序问题编写一个完整的程序,实现顺序表的建立、插入、删除、输出等基本运算。(1)建立一个顺序 2020-06-18 …
谁能帮我用函数写个C程序啊感激不尽题目如下实验一:顺序表的基本操作。编写一个完整的程序,实现顺序表 2020-06-18 …
根据中国的身份证编码规则,如果一个县一天出生人数超过999个,身份证怎么编码?根据中国的身份证编码 2020-07-14 …
编写一个完整的程序,实现顺序表的建立、插入、删除、输出等基本运算.(1)建立一个顺序表,含有n个数 2020-07-19 …
已知在一维数组A[m+n]中依次存放着两个顺序表(a1,a2,a3...am)和(b1b2b3.. 2020-08-03 …
问题描述编写一函数palindrome(char*s)用于判断任一字符串是否是回文(即顺序读与反序读 2020-11-07 …
数据结构问题1.设有两个整数类型的顺序表A(有m个元素)和B(有n个元素),其元素均以升序排列.试编 2020-12-05 …
约瑟夫问题:n个骑士编号1,2,.,围坐圆桌旁找出最后留在圆桌旁的骑士编号(1)编编写一个函数模板, 2020-12-14 …