题目内容 (请给出正确答案)
[主观题]

设有n个人围坐一圈并按顺时针方向从1到n编号,从第s个人开始进行1到m的报数,报数到第m个人,此人出

圈,再从他的下一个人重新开始1到m的报数,如此进行下去直到所有的人都出圈为止。现要求按出圈次序,每10人一组,给出这n个人的顺序表。请考生编写函数Josegh(void)实现此功能,并调用函数writeDat,把结果P输出到文件out.dat中。 设n=100,s=1,m=10。 ①将1到n个人的序号存入一维数组P中; ②若第i个人报数后出圈,则将p[i]置于数组的倒数第i个位置上,而原来第i+1个至倒数第i个元素依次向前移动一个位置; ③重复第②步直至圈中只剩下p[1]为止。 注意:部分源程序已经给出。 请勿改动主函数main和输出数据函数writeDAT的内容。设有n个人围坐一圈并按顺时针方向从1到n编号,从第s个人开始进行1到m的报数,报数到第m个人,此人出设有n个人围坐一圈并按顺时针方向从1到n编号,从第s个人开始进行1到m的报数,报数到第m个人,此人出

查看答案
如搜索结果不匹配,请 联系老师 获取答案
您可能会需要:
您的账号:,可能会需要:
您的账号:
发送账号密码至手机
发送
更多“设有n个人围坐一圈并按顺时针方向从1到n编号,从第s个人开始…”相关的问题

第1题

阅读以下函数说明和C语言函数,将应填入(n)处的字句写在对应栏内。【说明】 设有n个人围坐一圈并按顺

阅读以下函数说明和C语言函数,将应填入(n)处的字句写在对应栏内。

【说明】

设有n个人围坐一圈并按顺时针方向从1到n编号,从第s个人开始进行1到m的报数,报数到第m个人,则此人出圈,再从他的下一个人重新开始1到m的报数,如此进行下去,直到所有的人都出圈为止。

现要求按出圈次序,每10人一组,给出这n个人的顺序表。

设n=100,s=1,m=10。

(1)将1到n个人的序号存入一维数组p中;

(2)若第i个人报数后出圈,则将p置于数组的倒数第i个位置上,而原来第i+1个至倒数第i个元素依次向前移动一个位置:

(3)重复第(2)步,直至圈中只剩下p[1]为止。

include<stdio.h>

define N 100

define S 1

define M 10

void main()

{

int p[100],n,s,m;

m=M;

n=N;

s=S;

int i,j,s1,w;

s1=s;

for(i=1;(1);i++)

(2)=i;

for(i=n;i>=2;i--)

{

s1=(3);

if(s1==0)s1=i;

w=(4);

for(j=s1;j<i;j++)

p[j-1]=p[j];

p[i-1]=(5);

printf("%4d",p[i])}

}

点击查看答案

第2题

设有n个人围坐一圈并按顺时针方向从l到n编号,从第s个人开始进行l到m的报数,报数到第m个人,此人出
圈,再从他的下一个人重新开始l到m的报数,如此进行下去直到所有的人都出圈为止。现要求按出圈次序,每l0人一组,给出这n个人的顺序表。请考生编写函数Josegh(void)实现此功能,并调用函数writeDat,把结果P输出到文件out.dat中。 设n=100,s=1,m=10。 ①将l到n个人的序号存入一维数组P中; ②若第i个人报数后出圈,则将p[i]置于数组的倒数第i个位置上,而原来第i+1个至倒数第i个元素依次向前移动一个位置; ⑨重复第②步直至圈中只剩下p[1]为止。 注意:部分源程序已经给出。 请勿改动主函数main和输出数据函数writeDAT的内容。设有n个人围坐一圈并按顺时针方向从l到n编号,从第s个人开始进行l到m的报数,报数到第m个人,此人出设有n个人围坐一圈并按顺时针方向从l到n编号,从第s个人开始进行l到m的报数,报数到第m个人,此人出设有n个人围坐一圈并按顺时针方向从l到n编号,从第s个人开始进行l到m的报数,报数到第m个人,此人出

点击查看答案

第3题

设有n个人坐一圈并按顺时针方向从1到n编号,从第s个人开始进行1到m的报数,报数到第m个人,此人出圈
,再从他的下—个人重新开始从1到m报数,如此进行下去直到所有的人都出圈为止。先要求按出圈次序,每10个人为一组,给出这n个人的顺序表。请编制函数Josegh()实现此功能并调用函数WriteDat()把编

设n=100,s=1,m=10进行编程。

注意:部分源程序已给出。

请勿改动主函数main()和写函数WritsDat()的内容。

试题程序:

include<stdio.h>

define N 100

define S 1

define M 10

int p[lOO],n,s,m;

void WriteDat(void);

void Josegh(void)

{

}

void main()

{

m=M; n=N; s=S;

Josegh ();

WriteDat ();

}

void WriteDat(void)

{

int i;

FILE *fp;

fp=fopen ("OUT59. DAT", "w" );

for (i=N-1; i>=0;i--)

{

printf("%4d",p[i]);

fprintf (fp, "%4d",p [i] );

if (i%10==0)

{

printf ("\n");

fprintf (fp, "\n");

}

}

fclose (fp);

}

点击查看答案

第4题

有n个人围成一圈,按顺序从1到n编好号。从第一个人开始报数,报到m (m
有n个人围成一圈,按顺序从1到n编好号。从第一个人开始报数,报到m (m

点击查看答案

第5题

二十几个小朋友围成一圈,按顺时针方向一圈一圈地从1开始连续报数。如果报2和报 200的是同一个人,那么共有多少个小朋友?()

A.26

B.25

C.24

D.22

点击查看答案

第6题

n个人围成一圈,顺序排号。从第1个人开始报数(从1到3报数),凡报到3的人走出圈子,问最后留下的是原来第几号的那位。
n个人围成一圈,顺序排号。从第1个人开始报数(从1到3报数),凡报到3的人走出圈子,问最后留下的是原来第几号的那位。

点击查看答案

第7题

【题目5】 有n个人围成一圈,顺序从1开始排号。从第1个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。要求用循环链表实现。 【输入】 只有一个正整数n,保证n不超过1000。 【输出】 输出最后留下的人的原始编号。 请注意行尾输出换行。 【样例输入】 10 【样例输出】 4
点击查看答案

第8题

30个人围坐在一起轮流表演节目,他们按顺序从1到3依次不重复地报数,数到3的人出来表演节目,并
且表演过的人不再参加报数,那么在仅剩一个人没有表演过节目的时候,共报数多少人次?

A.77 B.57 C.117 D.87

点击查看答案

第9题

M个人围成一圈,顺序排好,从第一个人开始报数(从1~N),凡报到N的人就从圈中出来:然后从下一个人开始报数,直到只剩一个人为止。输出从圈中出来人的序号。

点击查看答案

第10题

学号为1到30的小朋友顺时针排成一圈,从1号小朋友开始顺时针报数,从数字1开始数下去,1,2,3,……28,29,30,31,32.……,一圈又一圈,问当数到数字n,所在的小朋友的学号为多少()

A.(n-1)%30

B.1+(n-1)%30

C.(n+1)%30-1

D.(n+1)%30

点击查看答案
发送账号至手机
密码将被重置
获取验证码
发送
温馨提示
该问题答案仅针对搜题卡用户开放,请点击购买搜题卡。
马上购买搜题卡
我已购买搜题卡, 登录账号 继续查看答案
重置密码
确认修改
温馨提示
每个试题只能免费做一次,如需多次做题,请购买搜题卡
立即购买
稍后再说
警告:系统检测到您的账号存在安全风险

为了保护您的账号安全,请在“赏学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!

微信搜一搜
赏学吧
点击打开微信
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反赏学吧购买须知被冻结。您可在“赏学吧”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
微信搜一搜
赏学吧
点击打开微信