标题:求助,用循环链表解约瑟夫环问题,哪位大神知道哪里错了
只看楼主
飞黄腾达
Rank: 2
等 级:论坛游民
帖 子:46
专家分:27
注 册:2013-3-14
结帖率:29.41%
已结贴  问题点数:10 回复次数:2 
求助,用循环链表解约瑟夫环问题,哪位大神知道哪里错了
#include<stdio.h>
#include<stdlib.h>
typedef struct node{
    int data;
    int Length;
    struct node *next;
}seqlist,*pseqlist;
void joselist(pseqlist L,int s,int m,int t);
void main()
{
  int k,c,i,n;
  pseqlist p,q,jos,head;
  head=(pseqlist)malloc(sizeof(pseqlist));
  p=(pseqlist)malloc(sizeof(pseqlist));
  q=(pseqlist)malloc(sizeof(pseqlist));
  head->next=NULL;
  printf("输入起始位置\n");
  scanf("%d",&k);
  printf("输入出列数\n");
  scanf("%d",&c);
  printf("输入人数\n");
  scanf("%d",&n);
  p=head->next;
  for(i=0;i<n;i++)
  {
    p->data=i+1;
    p=p->next;
   
  }
   p=head;//首尾相连
   joselist(head,k,c,n);
}
void joselist(pseqlist h,int s,int m,int t)
{
    int i,j;
    pseqlist p,pr,head;
    head=h;
    p=(pseqlist)malloc(sizeof(pseqlist));
    p=head;

    for(i=0;i<s;i++)
        p=p->next;
    for(i=0;i<t;i++)
    {
     for(j=0;j<m;j++)
     {
        pr=p;
        p=p->next;
        if(p==head)
        {pr=p;p=p->next;}
     }
        printf("%d",p->data);
        pr->next=p->next;
        free(p);
        p=pr->next;
    }
}
      
搜索更多相关主题的帖子: 约瑟夫 include next head 
2013-03-14 22:37
sy901027
Rank: 1
等 级:新手上路
帖 子:1
专家分:5
注 册:2013-3-14
得分:5 
不忍卒读。。。您觉得您的链表是个啥?
2013-03-14 23:15
不玩虚的
Rank: 9Rank: 9Rank: 9
来 自:四川
等 级:贵宾
威 望:10
帖 子:331
专家分:1301
注 册:2012-12-9
得分:5 
改我到是想帮你改,就是c语言我不大熟,用c++给你改你看行不,行的话我就帮你改

同学习......同进步....你帮我......我帮你.....上善若水.....
2013-03-16 22:42



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-400784-1-1.html




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

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