C语言进阶:[13]约瑟夫斯问题的实现

 时间:2026-02-11 21:22:07

    约瑟夫斯问题是一些人排成一圈,并且每个人都有编号,按照给定的某一个数量M,从索引1开始数到M,当前的人出局,然后从出局的人后面的人重新计算在数到M,当前的人出局,一直到剩下一个人为止。如下图所示:

C语言进阶:[13]约瑟夫斯问题的实现

    图是我自己手工画的,不好看,见谅。假设M=3,从1开始,索引3的出局,再计算,索引6的出局,我们要求出出局的次序和最后的那个人的索引。

C语言进阶:[13]约瑟夫斯问题的实现

C语言进阶:[13]约瑟夫斯问题的实现

代码中主要是变量i的循环,要考虑越界的问题,利用模的运算就很好的处理了。当11个人,3个一计算,打印过程和最后结果如下:

C语言进阶:[13]约瑟夫斯问题的实现

约瑟夫斯问题很有趣,对思维和代码的训练很有帮助。

(共篇)上一篇:整数转换为字符串|下一篇:
  • 霍山铁皮石斛仙草盆景(万丈须)
  • 如何在Mathematica 11中引用卡塔兰常数?
  • 英语人称代词 it 的用法
  • C#编程:怎么使用“^=”复合赋值运算符
  • 湖北大学哲学专业考研西方哲学史复习经验
  • 热门搜索
    工商管理专业怎么样 电脑没有声音怎么办 营业利润怎么算 嗓子痒咳嗽怎么办 小便发黄是怎么回事 桌面上的图标不见了怎么办 工作证明怎么写 右胸痛是怎么回事 验孕试纸怎么看 家长留言怎么写