
“猴子选大王”的题,最简的程序?
2个回答
展开全部
#include<stdio.h>
struct hou{
int x;
struct hou*p;
};
void main()
{
int m,n,i;//m是猴子个数,n是报的最大的数
struct hou*h,*p1,*p2;
scanf("%d%d",&m,&n);
h=p1=(struct hou*)malloc(sizeof(struct hou));
h->x=1;
for(i=1;i<m;i++)
{
p2=(struct hou*)malloc(sizeof(struct hou));
p1->p=p2;
p2->x=i+1;
p1=p2;
}
p1->p=h;
while(p1->p!=p1)
{
for(i=1;i<n;i++)p1=p1->p;
p1->p=p1->p->p;
}
printf("%d\n号为大王",p1->x);
}
struct hou{
int x;
struct hou*p;
};
void main()
{
int m,n,i;//m是猴子个数,n是报的最大的数
struct hou*h,*p1,*p2;
scanf("%d%d",&m,&n);
h=p1=(struct hou*)malloc(sizeof(struct hou));
h->x=1;
for(i=1;i<m;i++)
{
p2=(struct hou*)malloc(sizeof(struct hou));
p1->p=p2;
p2->x=i+1;
p1=p2;
}
p1->p=h;
while(p1->p!=p1)
{
for(i=1;i<n;i++)p1=p1->p;
p1->p=p1->p->p;
}
printf("%d\n号为大王",p1->x);
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询