江苏省高校计算机等级考试命题研究院 江苏省高校计算机等级考试辅导
全国计算机等级三级上机题库1

调用函数rwdata(),从IN.dat文件中读取10组数据(m和k值),并嵌套调用primenum函数分别得出array[]数组。请编写函数primenum(int m,int k,int array[]),该函数的功能是:将紧靠m的k个素数存入数组array并在屏幕上显示。最后把结果输出到文件OUT.dat中。
例如,若输入3 9,则应输出5 7 11 13 17 19 23 29 31。
注意:部分程序已经给出。请勿改动主函数main()和输出数据函数rwdata()的内容。
#include <conio.h>
#include <stdio.h>
void rwdata();
void primenum(int m, int k, int array[])
{

}
main()
{ int  m, n, array[1000];
 printf("\nPlease enter two integers:");
 scanf("%d%d", &m, &n);
 primenum(m, n, array);
 for (m=0; m<n; m++)
  printf("%d ", array[m]);
 printf("\n");
 rwdata();
}
void rwdata()
{ int  m, n, array[1000], i;
 FILE  *readfile, *writefile;
 readfile = fopen("in.dat", "r");
 writefile = fopen("out.dat", "w");
 for (i=0; i<10; i++)
 { fscanf(readfile, "%d %d", &m, &n);
  primenum(m, n, array);
  for (m=0; m<n; m++)
   fprintf(writefile, "%d ", array[m]);
  fprintf(writefile, "\n");
 }
 fclose(readfile);
 fclose(writefile);
}