爱问知识人 爱问教育 医院库

约瑟夫环编译通过,可是不能运行

首页

约瑟夫环编译通过,可是不能运行


        

提交回答

全部答案

    2018-04-06 08:24:10
  • 学习占位

    何***

    2018-04-06 08:24:10

  • 2018-04-06 05:24:10
  •   我这有个约瑟夫环问题是n个人出圈游戏,从第一个人开始没数到第三个人,出圈,你可以拿去用/*第二题约瑟夫环删除数字*/#include<stdio。h> #include<stdlib。
      h> typedef struct _person { int num; struct _person *next; } person; person* init(int n) { person *h,*p,*tail; int i; h=(person*)malloc(sizeof(person)); h->num=1; h->next=h; tail=h; for(i=1;i<n;i++) { p=(person*)malloc(sizeof(person)); p->num=i+1; p->next=tail->next; tail->next=p; tail=p; } return h; } int deal(person *h) { person *p,*q; int n; for(n=1,p=q=h;p->next!=p;q=p,p=p->next,n++) if(n%3==0) { q->next=p->next;printf("the deleate number:\n");printf("%d\n ",p->num); free(p); p=q->next; n=1; } n=p->num; free(p); return n; } int main() { person *h; int n; printf("输入人的个数:"); scanf("%d",&n); h=init(n); printf("最后的人是: %d\n",deal(h)); return 0; }。

    张***

    2018-04-06 05:24:10

  • 2018-04-06 05:24:10
  • 1) create()函数中的return head;应在最后一个右括号之前;2) free(p)之前应添加pre的后继结点:pre->next = p->next;

    冬***

    2018-04-06 05:24:10

类似问题

换一换
  • 互联网 相关知识

  • 电脑网络技术
  • 电脑网络

相关推荐

正在加载...
最新资料 推荐信息 热门专题 热点推荐
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200

热点检索

  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
返回
顶部
帮助 意见
反馈

确定举报此问题

举报原因(必选):