编号为1,2,...,n的n个人按顺时针方向坐在圆桌边, 每人持有一密码(正整数),从第s人开始报数, 报到第m人出列, 再从下一人开始报, 直至所有的人都出列为止
下面是用数组的方法编的C语言源程序!仅供参考,欢迎多提宝贵意见!
#include
main()
{
int n,s,password;
int a[100];
int i,j,counter1=1,counter2=0;
printf("please input the value of n:");
scanf("%d",&n);
printf("please input the number of the biginer:");
scanf("%d",&s);
if(s>n)
{
printf("please reinput the number less than %d:",n);
scanf("%d",&s);
}
printf("please input the value of the password:");
scanf("%d",&password);
for(i=0;i
j=s-1;
while(counter2!=n)
{
while(password==1)
{
printf("%4d",a[j]);
counter2++;
if(counter2==n)
return;
if(j
else
j=0;
}
while(password!=1&&counter1!=password)
{
if(j
else
j=0;
while(a[j]==0)
{
if(j
else
j=0;
}
counter1++;
if(counter1==password)
{
printf("%4d",a[j]);
a[j]=0;
if(j
else
&nb