数据结构约瑟夫环问题 c语言

编号为1,2,···,n的n个人围坐在一圆桌旁,每人持有一个正整数的密码。从第一个人开始报数,报到一个预先约定的正整数m时,停止报数,报m的人退席,下一个人又重新从1开始... 编号为1,2,···,n的n个人围坐在一圆桌旁,每人持有一个正整数的密码。从第一个人开始报数,报到一个预先约定的正整数m时,停止报数,报m的人退席,下一个人又重新从1开始报数,依此重复,直至所有的人都退席。编一程序输出他们退席的编号序列。例如,设m=20,n=7,7个人的密码依次是3,1,7,2,4,8,4,则退席的人的编号依次为6,1,4,7,2,3,5。

要求是c语言写
之前写了一个但是不得 能帮忙看一下或者是 有可行的代码给我对着看
发现这里贴不上代码了
展开
 我来答
匿名用户
2016-10-24
展开全部
你看下我以前写的这个吧,差不多,你稍微改下就行,http://wenku.baidu.com/view/34859501d0d233d4b14e699f
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ZESTRON
2024-09-04 广告
在Dr. O.K. Wack Chemie GmbH,我们高度重视ZESTRON的表界面分析技术。该技术通过深入研究材料表面与界面的性质,为提升产品质量与可靠性提供了有力支持。ZESTRON的表界面分析不仅涵盖了相变化、化学反应、吸附与解吸... 点击进入详情页
本回答由ZESTRON提供
White_MouseYBZ
2016-10-24 · TA获得超过4万个赞
知道大有可为答主
回答量:2.1万
采纳率:82%
帮助的人:6662万
展开全部
代码不难写,但不知道密码怎么获得。
更多追问追答
追问
7个人的密码依次以键盘输入
追答
#include "stdio.h"
#include "stdlib.h"
int main(void){
    int *p,m,n,i,k,x;
    printf("Please enter n(people) and m(reservation)...\n");
    scanf("%d%d",&n,&m);
    if(!(p=(int *)malloc(n*sizeof(int)))){
        printf("Application memory failure...\n");
        exit(0);
    }
    printf("Please enter %d secret number in turn...\n",n);
    for(i=0;i<n;scanf("%d",p+i++));
    printf("\nOut the order:\n");
    x=n,k=i=0;
    while(x){
        if(p[i] && ++k==m){
            printf(n-x ? " %d" : "%d",i+1);
            m=p[i];
            p[i]=k=0;
            x--;
        }
        ++i%=n;
    }
    free(p);
    printf("\n\n");
    return 0;
}

这个代码人数、预约首数、和密码都由键盘输入。

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式