下载频道> 资源分类> 编程语言> C源码> 实例203 约瑟夫环

标题:实例203 约瑟夫环 分享到:

所属分类: C源码 资源类型:程序源码 文件大小: 1.95 KB 上传时间: 2017-07-15 22:37:49 下载次数: 5 资源积分:1分 提 供 者: admin 实例203 约瑟夫环
内容:
#include "stdio.h"
#define N 9
#define OVERFLOW 0
#define OK 1
int KeyW[N]={4,7,5,9,3,2,6,1,8};
 
typedef struct LNode{
int keyword;
struct LNode *next;
}LNode,*LinkList;
 
void Joseph(LinkList p,int m,int x){
LinkList q; /*声明变量*/
int i;
if(x==0)return;
q=p;
m%=x;
if(m==0)m=x;
for(i=1;i<=m;i++){ /*找到下一个结点*/
p=q;
q=p->next;
}
p->next=q->next;
i=q->keyword;
printf("%d ",q->keyword);
free(q);
Joseph(p,i,x-1); /*递归调用*/
}
 
int main()
{
int i,m;
LinkList Lhead,p,q;
Lhead=(LinkList)malloc(sizeof(LNode)); /*申请结点空间*/
if(!Lhead) return OVERFLOW;
Lhead->keyword=KeyW[0]; /*数据域赋值*/
Lhead->next=NULL;
p=Lhead;
for(i=1;i<9;i++){ /*创建循环链表*/
if(!(q=(LinkList)malloc(sizeof(LNode))))return OVERFLOW;
q->keyword=KeyW[i];
p->next=q;
p=q;
}
p->next=Lhead;
printf("请输入第一次计数值m: \n");
scanf("%d",&m);
printf("输出的队列是:\n");
Joseph(p,m,N);
getch();
return OK;
    
}
 

文件列表(点击上边下载按钮,如果是垃圾文件请在下面评价差评或者投诉):

实例203 约瑟夫环
实例203 约瑟夫环\www.gusucode.com
实例203 约瑟夫环\文件说明.txt
实例203 约瑟夫环\www.gusucode.com.txt
实例203 约瑟夫环\www.gusucode.com\203.C
实例203 约瑟夫环\【谷速代码】-免费源码.url

关键词: 约瑟夫 实例

相关推荐

Top_arrow
回到顶部
关于我们| 联系方式| 版权声明| 招聘信息| 广告服务| 银行汇款账号| 法律顾问| 合作伙伴| 付款方式|
网站客服网站客服 程序员兼职招聘 程序员兼职招聘 博客客服
沪 ICP 证 14049794 号
谷速代码 版权所有
Copyright © 1999-2014, GUSUCODE.COM, All Rights Reserved