2008人站成一排报奇数的出列,其余依次报数,如此反复必剩下一人.编一程序问此人第一次报的是几?程序必须是用c语言编写的.

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/07 10:37:29
2008人站成一排报奇数的出列,其余依次报数,如此反复必剩下一人.编一程序问此人第一次报的是几?程序必须是用c语言编写的.

2008人站成一排报奇数的出列,其余依次报数,如此反复必剩下一人.编一程序问此人第一次报的是几?程序必须是用c语言编写的.
2008人站成一排报奇数的出列,其余依次报数,如此反复必剩下一人.编一程序问此人第一次报的是几?
程序必须是用c语言编写的.

2008人站成一排报奇数的出列,其余依次报数,如此反复必剩下一人.编一程序问此人第一次报的是几?程序必须是用c语言编写的.
/*你是怎么口算的?能共享一下思想么?我这是用程序才算出来的*/
/*2008人站成一排报奇数的出列,其余依次报数,如此反复必剩下一人.编一程序问此人第一次报的是几?*/
#include
#define MAX 2008
int n = MAX;
int d[MAX];
int pow(int a,int b);
int main(int argc,char *argv[])
{
int i,k = 0;
for (i = 0; i < MAX; i++)/*赋值 */
{
d[i] = i;
}
while (n > 1)
{
for (i = pow(2,k) - 1; i < MAX; i += pow(2,k+1))
{
n--;
d[i] = -1;
}
k++;
}
for (i = 0; i < MAX; i++)
{
if (d[i] != -1)
{
printf("result:%d\t",i+1);
}
}
return 0;
}
int pow(int a,int b)//指数函数
{
int i;
int s = 1;
for (i = 0; i < b; i++)
{
s *= a;
}
return s;
}

2008人站成一排报奇数的出列,其余依次报数,如此反复必剩下一人.编一程序问此人第一次报的是几?程序必须是用c语言编写的. 100人排成一列报数,报奇数出列,其余在接着按次序报数,报奇数者出列,……,剩下的人在原队伍中是()号 100人排成一排自1起往下报数,报奇数的出列,留下的重报一直重复报下去,最后剩一人,这个人早第一次报数时所报的数是多少? 200个人站在一排从1开始依次报数,报奇数者离队,留下者再次从1开始报数,凡报奇数者又离队,如此下去,最后留下一个人.问:这个人第一次报的数是多少? 200个人站在一排从1开始依次报数,报奇数者离队,留下者再次从1开始报数,凡报奇数者又离队,如此下去,最后留下一个人.问:这个人第一次报的数是多少? 300个人站成一横排,自1起按顺序报数,凡报奇数的人出列.300个人站成一横排,自1起按顺序报数,凡报奇数的人出列,凡报偶数的人留下;留下的人再自1起按顺序报数,凡报奇数的人出列,凡报偶数 2004个人站成一排从1起依次报数,报到奇数就离队,剩下的人按原来的再从1报,依此一 有2008个人,从1开始报数,报的奇数的向后退一步剩下的再报,奇数的再退,依次再报.再退.最后还剩一个额 有2008个人,从1开始报数,报的奇数的向后退一步剩下的再报,奇数的再退,依次再报. 一列队160人,顺次报数,报奇数的人出列,最后剩下一人,问此人第一次报哪个数 同学们做广播操18人站成一排按1234的顺序依次重复报数这一排最后一个同学应该报几? 130个人报数,按自然数排列顺序报下去,凡是报奇数的人出列,剩下来的人按这顺序接着报下去,最后留下来的那个人在第一次报数中报第几? m个人排成一行,自1起至m以此报数,凡报奇数者出列,留下的队再从1起报数,报奇数者又出列最后剩的一个人第一次报的是64,m的最大值是多少 m个人排成一行,自1起至m以此报数,凡报奇数者出列,留下的队再从1起报数,报奇数者又出列最后剩的一个人第一次报的是64,m的最大值是多少 130人报数,报单数的出列,剩下的人再报数,单数出列,如此报几次剩一人,此人第 40个运动员排成一列,报偶数的出列,出列的再报数,仍是报偶数的出列,最后一个报偶数的人站在几号位置? 同学们做广播操,每18人站成一排,按“1,2,3,4”的顺序依次重复报数.每排的最后一个同学应该 报多少. 同学们做广播操,每18人站成一排,按“1、2、3、4”的顺序依次重复报数.每排的最后一个同学应该报 2008个人站成一排从1起依次报数,报到奇数的人离队,剩下的人按原来的先后顺序再从1报数,凡报到奇数的…2008个人站成一排从1起依次报数,报到奇数的人离队,剩下的人按原来的先后顺序再从1