首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
设有n个人坐一圈并按顺时针方向从1到n编号,从第s个人开始进行1到m的报数,报数到第m个人,此人出圈,再从他的下一个人重新开始从1到m报数,如此进行下去直到所有的人都出圈为止。先要求按出圈次序,每10个人为一组,给出这n个人的顺序表。请编制函数Josegh
设有n个人坐一圈并按顺时针方向从1到n编号,从第s个人开始进行1到m的报数,报数到第m个人,此人出圈,再从他的下一个人重新开始从1到m报数,如此进行下去直到所有的人都出圈为止。先要求按出圈次序,每10个人为一组,给出这n个人的顺序表。请编制函数Josegh
admin
2009-02-19
52
问题
设有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
);
fprintf(fp, "%4d",p
);
if (i%10==0)
{
printf("\n");
fprintf(fp,"\n");
}
}
fclose(fp);
}
选项
答案
void Josegh(void) { int i,j,k,s1,w; s1=s; for{i=1;i<=n;i++) /*给n个人从1到n编号*/ p[i-1]=i; for(i=n;i>=2;i++) { s1=(s1+m-1)%i; /*下一个开始报数的人的编号是(s1+m-1)%i*/ if(s1==0) /*若s1为0,则说明要开始报数的是最后一个人*/ s1=i; w=p[s1-1]; /*将要出圈的人移至数组的最后*/ for(j=s1;j<=i-1;j++) p[j-1]=p[j]; p[i-1]=w; } }
解析
本题考查的知识点如下:
(1)将数组建成环。
(2)运算符“%”的使用。
(3)循环的嵌套使用。
此题是著名的“约瑟夫环”问题。首先要将每个人的编号存入数组。因为每次是从s1开始报数,若是直线队则下一个开始报数的人的编号是s1+m-1,但这里要建立一个环,即最后一个人报完数后第一个人接着报数。所以这时下一个开始报数的人的编号是(s1+m-1)%i,i是此时圈中的总人数。若所得的结果为0,则说明要开始报数的是最后一个人。在此人前面的那个人就是要出圈的人,使用循环将要出圈的人移至数组的最后。开始时,总人数为n,以后依次减1,直到最后一个人出圈。
转载请注明原文地址:https://kaotiyun.com/show/yZcZ777K
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
在现行PC机中,I/O端口常用的地址范围是( )。
在硬盘存储器中,当驱动器与内存储器进行信息交换时,由( )控制它们信息读取。
微软公司开发了一种音视频流媒体文件格式,其视频部分采用了MPEG-4压缩算法,音频部分采用了压缩格式WMA,且能依靠多种协议在不同网络环境下支持数据的传送。这种流媒体文件的扩展名是( )。
假设某CPU的一个总线周期为50ns,时钟周期为、2ns,所访问的主存的存取速度为60ns,为了正确读出内存中的指令和数据,须在总线周期中插入的等待状态个数是()。
RVDS开发工具套件中,主要包括工程管理器、【79】、调试器和指令集仿真器等。调试器是RVDS工具套件中的功能模块之一,它支持【80】调试和软件仿真调试。
8段共阳极LED数码管示意如图所示,为了显示字符9,其二进制代码(按dpgfedcba的顺序排列)是()。
为用ARM芯片的一根GPIO引脚驱动一个LED(发光二极管),设计了如下图(a)~(d)共4个具体的电路。图中,设计得最合理的电路是()。
为提高SoC芯片设计效率,减少重复开发,通常将合格的经过验证的IC设计文件存储在数据库中,供反复使用。这些IC电路具有固定的不可再分解的功能特性,并受到知识产权保护,人们称之为“知识产权核”或“IP核”。按照IC设计文件的类型,IP核通常分为三种【41】、
下面是关于嵌入式系统使用的存储器的叙述:Ⅰ.嵌入式系统使用的存储器按照其存取特性可分为RAM和ROMⅡ.嵌入式系统使用的存储器按照其所处物理位置可分为片内存储器和片外存储器以及外部存储器Ⅲ.嵌入式系统使用的存储器按照存储信息的类型可分为程序存储器和数
如存储器的工作频率为333MHz,数据线宽度为32位,每个周期传输1次数据,则存储器的带宽=__________【63】MB/s。若存储器总线采用串行总线,以10位为一个数据帧(包含一个字节的存储数据),则总线带宽=总线频率/__________【64】。
随机试题
A.外周血中幼稚细胞、原始细胞﹥15%B.外周血有较多幼稚粒细胞伴嗜酸、嗜碱性粒细胞增多C.外周血中幼红、幼粒细胞易见,骨髓呈现“干抽”D.外周血中出现较多异型淋巴细胞E.外周血中易见盔形细胞、小球形细胞及破碎红细胞CML血涂片可见
一男性食管癌患者,既往无慢性咳嗽病史,放疗中出现咳嗽,喝水呛咳,有发热,应警惕
折返激动的病理基础是
A.氟轻松B.醋酸氢化可的松C.丙酸倍氯他索D.醋酸地塞米松E.特比萘芬属于强效糖皮质激素的是()。
附带民事诉讼一般应当同刑事案件一并审判。 ( )
三清山风景如画,有_________的峰峦,_________的奇石。填入划横线部分最恰当的一项是:
下列做法符合我国法律规定的是:
有8套计算机应用软件A、B、C、D、W、X、Y、Z要进行系统集成安装。虽然每套应用软件占用的存储空间不大,但部分应用软件调用操作系统底层相同的动态链接库(DLL),出于安全考虑,某些应用软件不能安装在同一台服务器上。在图4-2中,符号“×”表示相应的两套计
在VisualFoxPro中,编译或连编生成的程序文件的扩展名不包括
下列有语法错误的赋值语句是( )。
最新回复
(
0
)