题目要求
约瑟夫最后一个死的问题
#include<stdio.h>
void main()
{
int m,n,arr[40],brr[40],biao[40],k=0,b=0,t;
scanf("%d%d",&n,&m);
for (int i = 0; i < n; i++)
{
biao[i]=i+1;
}
while (1)
{
t=biao[1];
for (int i = 0; i <= n; i+m)
{
arr[b]=biao[i];
b++;
} //出来的
for (int g = 0; g < n; g++)
{
if (g%m!=0)
{
brr[k]=biao[g];
} //还在里面的
k++;
}
for (int f = 0; f < k; f++)
{
biao[f]=brr[f];
}
if (biao[1]==t)
{
break;
}
}
printf("最后一个出列的是%d",biao[0]);
}
想知道为什么输不出来biao[0]
- 点赞
- 写回答
- 关注问题
- 收藏
- 复制链接分享
- 邀请回答
2条回答
为你推荐
- 约瑟夫问题C++ (萌新学习c++)
- c++
- 2个回答
- 数据结构链表,完全对应书上,但在vs2019上无法运行。
- c++
- 1个回答
- 类似约瑟夫问题,求最后剩下元素?
- c++
- 1个回答
- 数据结构的题 有没有大佬
- 数据结构
- 5个回答
- 经典问题:猴子选大王!本人c语言新手♛
- c
- 3个回答
- c语言循环链表,解决约瑟夫问题
- c
- 链表
- 2个回答