![](https://csdnimg.cn/release/download_crawler_static/31257500/bg5.jpg)
(5) ;
}
10.在本题的程序中,函数 create_link_list(n)建立一个具有 n 个
结点的循环链表;函数 josephus(n,I,m)对由 create_link_list(n)
所建立的具有 n 个结点的循环链表按一定的次序逐个输出,并删除链
表中的所有结点。参数 n(n>0)指明循环链表的结点个数,参数 I(1
≤I≤n)指明起始结点,参数 m(m>0 是步长),指明从起始结点或前
次被删除并输出的结点之后的第 m 个结点作为本次被输出并删除的
结点。例如,对于下图所示的具有 6 个结点的循环链表,在调用
josephus(6,3,2)后,将输出 5,1,3,6,4,2。请在空框处填上适当内
容,每框只填一个语句。
#define NULL 0
typedef struct node{
int data;
struct node *next;
}node, linklisttype;
linklisttype *create_link_list(int n){
linklisttype *head, *p, *q;
int I;