设有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的内容。
第1题:
第2题:
第3题:
/* 报数游戏:n个小朋友在学校操场上围成一圈玩报数游戏,要求用双向链表实现。游戏规则是如下所示: (1) 从第k个小朋友开始轮流报数; (2) 如果某个小朋友报数是m,则立即从圈中离开,下一个小朋友继续从1开始报数; (3) 为了增加游戏的趣味性,报数方向向左或向右,标志变量direction的值为0向左,为1向右,游戏过程中方向不改变 (4) 最后一个离队的小朋友获得“最美丽女孩”称号; (5) 游戏中的n,m,k,direction在游戏之前确定。 */
第4题:
第5题:
具体要求如下: 让 N 只候选猴子围成一圈(最多100只猴子),从某位置起顺序编号为 1 ~ N 号;从第 1 号开始报数,每轮从 1 报到 3 ,凡报到 3 的猴子即退出圈子,接着又从紧邻的下一只猴子开始同样的报数;如此不断循环,最后剩下的一只猴子就选为猴王。 测试输入:5 预期输出:4号猴子是大王。 测试输入:18 预期输出:14号猴子是大王。