当前位置: 首页 > news >正文

C语言实例-约瑟夫生者死者小游戏

问题:

30个人在一条船上,超载,需要15人下船。于是人们排成一队,排队的位置即为他们的编号。报数,从1开始,数到9的人下船,如此循环,直到船上仅剩15人为止,问都有哪些编号的人下船了呢?

代码:
#include <stdio.h>int main(){int count = 0; //下船人数int baoshu = 0;//报数int i=0;//编号int b[31] = {0};//当下船人数小于15时,一直循环while(count<15){//从1到30循环i++;if(i >= 31) i=1;//报数时跳过已经标记为下船的人if(b[i] == 0){baoshu++;}if(baoshu == 9) {b[i] = 1; //标记为下船count++;//下船人数printf("i=%d \tb[%d]=%d\t 第%d个下船\t 编号:%d\n",i,i,b[i],count,i);//重置报数 //报数归1,同时i值增加至下一个b[i]!=1的位置//do-while循环是解决连续多个b[i]=1的情况do{i++;if(i >= 31) i=1;} while (b[i]!=0);baoshu = 1;}}return 0;
}
运行结果:

http://www.lryc.cn/news/406322.html

相关文章:

  • 算法类学习笔记 ———— 红绿灯检测
  • git命令使用详细介绍
  • WebStorm中在Terminal终端运行脚本时报错无法加载文件进行数字签名。无法在当前系统上运行该脚本。有关运行脚本和设置执行策略的详细信息,请参阅
  • 【Java题解】以二进制加法的方式来计算两个内容为二进制数字的字符串相加的结果
  • docker -v 到底和那个一样?type=volume还是type=bind的解释
  • linux自动化构建工具--make/makefile
  • 学习记录——day15 数据结构 链表
  • vue3实现在新标签中打开指定的网址
  • Qt基础 | QSqlTableModel 的使用
  • RPA软件-影刀使用
  • HarmonyOS NEXT零基础入门到实战-第四部分
  • vue2获取视频时长
  • Linux中进程的控制
  • 【源码】Sharding-JDBC源码分析之JDBC
  • Java | Leetcode Java题解之第273题整数转换英文表示
  • 数据结构之深入理解简单选择排序:原理、实现与示例(C,C++)
  • 使用vscode搜索打开的文件夹下的文件
  • 力扣778.水位上升的泳池中游泳
  • Nacos-2.4.0最新版本docker镜像,本人亲自制作,部署十分方便,兼容postgresql最新版本17和16,奉献给大家了
  • Halcon机器视觉15种缺陷检测案例_9找出所有网格顶点的位置
  • w30-python02-pytest入门
  • WPF+Mvvm项目入门完整教程-仓储管理系统(二)
  • SkyWalking入门搭建【apache-skywalking-apm-10.0.0】
  • exo项目目录架构
  • mysql中where与on区别
  • filebeat把日志文件上传到Es中配置(ES7版本)
  • Vue Router基础
  • Apache压测工具ab(Apache Bench)工具的下载安装和使用示例
  • IPIDEA与Python爬虫:联手解锁全球电商数据宝库
  • Fine-BI学习笔记