普通网友 2016-12-06 02:01 采纳率: 0%
浏览 983

在线采纳在线等求解答C语言编程

个人围成一圈,1,2,3循环报数,报到3的人退出,并将退出的序号依次存到数组p中,包括最后一个人的序号。到最后只余1人,输出最后留下的是第几号(最初的序号,以1起始)。若m=6,则输出n=1 3 6 4 2 5 1;若m=10,则输出n=4 3 6 9 2 7 1 8 5 10 4;若m=100,则输出n=91 3 6 9……100 58 91。函数int fun(int n ,int p[ ])实现上述功能,返回n个人中最后余的1人的起始序号,并将退出的序号顺序写入p指向的数组中。。
#include
int baoshu(int n ,int p[ ] )
{ …… }
int main()
{int m,a[1000],i,num;
printf("人数:");
scanf("%d",&m); //此处的m要小于等于1000
num= fun(m,a);
printf("最后退出的序号是:%d\n",num);
puts("退出的顺序是:");
for(i=0;i<m;i++)
printf("%d ",a[i]);
printf("\n");
return 0 ;
}

  • 写回答

2条回答 默认 最新

  • T_world 2016-12-06 02:10
    关注

    约瑟夫环问题,非常经典的一个算法问题,百度可以得到很多答案

    评论

报告相同问题?

悬赏问题

  • ¥15 安装svn网络有问题怎么办
  • ¥15 Python爬取指定微博话题下的内容,保存为txt
  • ¥15 vue2登录调用后端接口如何实现
  • ¥65 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥15 latex怎么处理论文引理引用参考文献