計算機等級考試二級C語言上機題1

字號:

☆題目1
    請編寫一個函數(shù)jsvalue(int m,int k,int xx[]),該函數(shù)的功能是:將大于整數(shù)m且緊靠m的k個素數(shù)存入數(shù)組xx傳回。
     最后調(diào)用函數(shù)writedat()讀取10組數(shù)據(jù),分別得出結(jié)果且把結(jié)果輸出到文件out.dat中。
     部分源程序存在文件prog1.c中。
     例如:若輸入17 5 則應(yīng)輸出:19,23,29,31,37。
     請勿改動主函數(shù)main()和寫函數(shù)writedat()的內(nèi)容。
    #include
    #include
    void readwritedat();
    
    int isp(int m)
    {
     int i;
     for(i=2;i if(m % i==0)return 0;
     return 1;
    }
    
    void num(int m,int k,int xx[])
    { int s=0;
     for(m=m+1;k>0;m++)
     if(isp(m)) { xx[s++]=m; k--;}
    }
    
    main()
    {
     int m,n,xx[1000];
     clrscr();
     printf("\nplease enter two integers:");
     scanf("%d%d",&m,&n);
     num(m,n,xx);
     for(m=0;m printf("%d ",xx[m]);
     printf("\n");
     readwritedat();
    }
    
    void readwritedat()
    {
     int m,n,xx[1000], i;
     file *rf,*wf;
    
    
     rf=fopen("in.dat","r");
     wf=fopen("out.dat","w");
     for(i=0;i<10;i++){
     fscanf(rf,"%d %d",&m,&n);
     num(m,n,xx);
     for(m=0;m }
     fclose(rf);
     fclose(wf);
    }