C语言结构体 报数游戏 输入人数和结束数字 循环报数,报到结束数字出局,至剩一人 输出剩的一人是第几位
答案:2 悬赏:80 手机版
解决时间 2021-02-06 20:50
- 提问者网友:了了无期
- 2021-02-05 22:02
C语言结构体 报数游戏 输入人数和结束数字 循环报数,报到结束数字出局,至剩一人 输出剩的一人是第几位
最佳答案
- 五星知识达人网友:孤独的牧羊人
- 2021-02-05 22:29
这其实是个循环链表的问题,但是如果不用链表来解答,也很简单,我看你是想用循环的方式来解答而不是用列表的方式,我就写了一个
#include
struct People
{
int number;
};
int main()
{
struct People peo[1000] = {0};
int n, num;
printf("请输入人数:");
scanf("%d",&n);
printf("请输入报数结束数字:");
scanf("%d",&num);
int i = 0;
for(i=0; i {
peo[i].number=i+1;
}
int j = 0;
int peopleNumber = n;
num--;
for (i = 0; n > 1; i++){
if(i > peopleNumber){
i = 0;
}
if(peo[i].number != 0){
j++;
}else{
continue;
}
if(j % (num+1) == 0){
peo[i].number = 0;
n--;
}
}
for (i = 0; i < peopleNumber; i++){
if (peo[i].number != 0)
printf("%d", peo[i].number);
}
return 0;
}
#include
struct People
{
int number;
};
int main()
{
struct People peo[1000] = {0};
int n, num;
printf("请输入人数:");
scanf("%d",&n);
printf("请输入报数结束数字:");
scanf("%d",&num);
int i = 0;
for(i=0; i
peo[i].number=i+1;
}
int j = 0;
int peopleNumber = n;
num--;
for (i = 0; n > 1; i++){
if(i > peopleNumber){
i = 0;
}
if(peo[i].number != 0){
j++;
}else{
continue;
}
if(j % (num+1) == 0){
peo[i].number = 0;
n--;
}
}
for (i = 0; i < peopleNumber; i++){
if (peo[i].number != 0)
printf("%d", peo[i].number);
}
return 0;
}
全部回答
- 1楼网友:污到你湿
- 2021-02-05 23:12
你看看这个对不对
如果对了望采纳
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯