网站大量收购独家精品文档,联系QQ:2885784924

约瑟夫生死游戏编程.doc.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
约瑟夫生死游戏编程.doc

一、设计内容与设计要求 1.设计内容: [问题描述] [基本] (1)(2)#include stdio.h #include malloc.h int M,K; typedef struct game { int number; struct game *next; }GNode; void main() { struct game *CreateGame(GNode *head); void GameOut(GNode *head,int m); void restprint(GNode *head); GNode *head=NULL; int m; printf(请输入船上的人数: ); scanf(%d,m); M=m; printf(请输入要报的数值K: ); scanf(%d,K); while(KM) { printf(输入有误!船上人数值 M 必须要大于K值: \n); printf(请输入船上的人数: ); scanf(%d,M); printf(请输入要报的数值K: ); scanf(%d,K); } head=CreateGame(head); GameOut(head,m); } struct game *CreateGame(GNode *head) { GNode *p=NULL,*q=NULL; int count=0; while(Mcount) { if(!head) { head=(struct game *)malloc(sizeof(GNode)); head-number=++count; p=q=head; } else { p=(struct game *)malloc(sizeof(GNode)); p-number=++count; q-next=p; q=p; } } p-next=head; return head; } void restprint(GNode *head) { GNode *p=head; int i; printf(********************************\n); for(i=1;i=M;i++) { printf(%3d,p-number); if(i%10==0)printf(\n); p=p-next; } printf(\n********************************\n); } void GameOut(GNode *head,int m) { GNode *p=NULL,*q=NULL; int count=1; int j=1; q=p=head; while(M(m/2)) { p=p-next; count++; if(count==K) { restprint(head); printf(第%3d 个被扔进海里的位置是:%3d\n,j++,p-number); q-next=p-next; p=p-next; q=p; count=1; M--; } else q=p; } }

文档评论(0)

xy88118 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档