设有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);