C 語言實例 – 約瑟夫生者死者小游戲
C 語言實例 - 約瑟夫生者死者小游戲
30 個人在一條船上,超載,需要 15 人下船。
于是人們排成一隊,排隊的位置即為他們的編號。
報數,從 1 開始,數到 9 的人下船。
如此循環,直到船上僅剩 15 人為止,問都有哪些編號的人下船了呢?
實例
#include<stdio.h>
int c = 0;
int i = 1;
int j = 0;
int a[30] = { 0 };
int b[30] = { 0 };
int main() {
while (i<=31) {
if (i == 31) {
i = 1;
} else if (c == 15) {
break;
} else {
if (b[i] != 0) {
i++;
continue;
} else {
j++;
if (j != 9) {
i++;
continue;
} else {
b[i] = 1;
a[i] = j;
j = 0;
printf("第%d號下船了\n", i);
i++;
c++;
}
}
}
}
}
執行以上實例,輸出結果為:
第9號下船了 第18號下船了 第27號下船了 第6號下船了 第16號下船了 第26號下船了 第7號下船了 第19號下船了 第30號下船了 第12號下船了 第24號下船了 第8號下船了 第22號下船了 第5號下船了 第23號下船了
相關文章
- C++中的字符串編碼怎么處理
- C++學習之如何進行內存資源管理
- C++學習之智能指針中的unique_ptr與shared_ptr
- C++手擼智能指針的教程分享
- C語言常用占位符的使用小結
- C++?OpenMP簡單介紹
- 一文弄懂C語言EOF
- C++數據封裝以及定義結構的詳細講解
- 一文詳解C語言操作符
- Visual Studio 遠程調試步驟
- 如何使用簽名保證ASP.NET MVC OR WEBAPI的接口安全
- .net數據庫操作框架SqlSugar的簡單入門
- 詳解.Net緩存之MemoryCahe
- asp.net core MVC之實現基于token的認證
- .Net集成敏感詞組件的步驟
- .Net Core導入千萬級數據至Mysql數據庫的實現方法
- .Net的GC垃圾回收原理及實現
- ASP.NET Core文件壓縮常見使用誤區(最佳實踐)
- .NET Core結合Nacos實現配置加解密的方法
- asp.net core為IHttpClientFactory添加動態命名配置