题目详情
当前位置:首页 > 计算机考试 > 初级程序员
题目详情:
发布时间:2024-03-07 18:33:27

[简答题]【说明】
设有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])

更多"【说明】 设有n个人围坐一圈并按顺时针方向从1到n编号,从第s个人开"的相关试题:

[简答题]【说明】 设有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])} }
[简答题]设有n个人围坐一圈并按顺时针方向从1到n编号,从第s个人开始进行1到m的报数,报数到第m个人,此人出圈,再从他的下一个人重新开始1到m的报数,如此进行下去直到所有的人都出圈为止。现要求按出圈次序,每10人一组,给出这n个人的顺序表。请编写函数Josegh( )实现此功能,并调用函数WriteDat( ),把结果p输出到OUT.DAT文件中。
设n=100,s=1,m=10。
(1)将1到n个人的序号存入一维数组p中;
(2)若第i个人报数后出圈,则将p[i]置于数组的倒数第i个位置上,而原来第i+1个至倒数第i个元素依次向前移动一个位置;
(3)重复第(2)步直至圈中只剩下p[1]为止。
注意:部分源程序已经给出。
请勿改动主函数main( )和输出数据函数WriteDat( )的内容。
#include<stdio.h>
#define N 100
#define S 1
#define M 10
int p[100],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("OUT.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);

[简答题]设有n个人坐一圈并按顺时针方向从1到n编号,从第s个人开始进行1到m的报数,报数到第m个人,此人出圈,再从他的下一个人重新开始从1到m报数,如此进行下去直到所有的人都出圈为止。先要求按出圈次序,每10个人为一组,给出这n个人的顺序表。请编制函数Josegh( )实现此功能并调用函数WriteDat( )把编号按照出圈顺序输出到文件OUT59.DAT中。
设n=100,s=1,m=10进行编程。
注意;部分源程序已给出。
请勿改动主函数main( )和写函数WriteDat( )的内容。
试题程序:
#include<stdio.h>
#define N 100
#define S 1
#define M 10
int p[100],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);

[单项选择]二十几个小朋友围成一圈,按顺时针方向一圈一圈地连续报数。如果报2和200的是同一个人,那么共有 个小朋友。
A. 22
B. 24
C. 27
D. 28
[单项选择]警示语为“请仔细阅读药品使用说明书并按说明使用”的药品是
A. 处方药
B. 非处方药
C. 乙类非处方药
D. 甲类非处方药
E. 传统药
[单项选择]二十几个小朋友围成一圈,按顺时针方向一圈一圈来连续报数。如果报2和200的是同一个人,那么共有多少个小朋友( )
A. 22
B. 24
C. 27
D. 28
[单项选择]二十几个小朋友围成一圈,按顺时针方向一圈一圈地从1开始连续报数。如果报2和报200的是同一个人,那么共有多少个小朋友
A. 26
B. 25
C. 24
D. 22
[单项选择]二十几个小朋友围成一圈,按顺时针方向一圈一圈地连续报数.如果报2和200的是同一个人,那么共有()个小朋友。
A. 22
B. 24
C. 27
D. 28
E. 25
[单项选择]30个人围坐在一起轮流表演节目。他们按顺序从1到3依次不重复地报数,数到3的人出来表演节目,并且表演过的人不再参加报数,那么在仅剩一个没表演过节目的时候,共报数多少人数?
A. 87 
B. 117 
C. 57 
D. 77
[单项选择]在药品包装上或说明书中印有“请仔细阅读药品使用说明书并按说明书使用或在药师指导下购买和使用”的是()
A. 现代药
B. 传统药
C. 处方药
D. 非处方药
E. 国家基本药物
[单项选择]警示语为“请仔细阅读药品使用说明书并按说明使用”或“在药师指导下购买和使用”的药品是()
A. 处方药
B. 非处方药
C. 乙类非处方药
D. 甲类非处方药
E. 传统药

我来回答:

购买搜题卡查看答案
[会员特权] 开通VIP, 查看 全部题目答案
[会员特权] 享免全部广告特权
推荐91天
¥36.8
¥80元
31天
¥20.8
¥40元
365天
¥88.8
¥188元
请选择支付方式
  • 微信支付
  • 支付宝支付
点击支付即表示同意并接受了《购买须知》
立即支付 系统将自动为您注册账号
请使用微信扫码支付

订单号:

请不要关闭本页面,支付完成后请点击【支付完成】按钮
恭喜您,购买搜题卡成功
重要提示:请拍照或截图保存账号密码!
我要搜题网官网:https://www.woyaosouti.com
我已记住账号密码