| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 345 人关注过本帖
标题:循环链表求助。。。为什么运行不了
取消只看楼主 加入收藏
nan1888
Rank: 2
等 级:论坛游民
帖 子:44
专家分:86
注 册:2011-6-19
结帖率:85.71%
收藏
 问题点数:0 回复次数:0 
循环链表求助。。。为什么运行不了
n只猴子选国王问题:所以的猴子围成一圈,先从第一只猴子开始报数,报到13的猴子出列,依次重复,每一轮报数都比上一轮少1,知道报数减到1后,又从13开始报数,重复到剩下最后一只就是猴王。
#include<stdio.h>
#include<stdlib.h>
#define null 0
#define ok 1
#define error 0
#define overlow -2;
typedef status;
typedef elemtype;
typedef struct king{
    elemtype data;
    struct king *next;
}King;
King *s;
status greatlist(King *l,int n)
{King *p,*q;
int i;
for (i=n;i>0;i--)
{p=(King*)malloc(sizeof(King));
if(p==null) return overlow;
p->data=i;
p->next=l;
l=p;
}
q->next=l;
s=l;
return ok;}
status Kings(King *l,int n)
{ King *p,*q;
int i,k;
l=null;
for(k=1;k<13;k--)
{if(k==0) return k=13;
for(i=0;i<k;i++)
p=p->next;
q=p->next;
printf("%d",q->data);
if(p->next==p)
break;
else {p->next=q->next;
p=p->next;
free(q);}
printf("%d",p->data);
}
int main()
{int n;
King *l;
printf("houzishu");
scanf("%d",&n);
greatlist(l,n);
Kings(l,n);
return 0;}

[ 本帖最后由 nan1888 于 2011-7-22 20:56 编辑 ]
搜索更多相关主题的帖子: include status null 猴王 
2011-07-21 17:08
快速回复:循环链表求助。。。为什么运行不了
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.031803 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved