请编写一个函数fun,它的功能是:求出1到m之间(含m)能被7或11整除的所有整数放在数组a中,通过n返回这些数的个数。例如,若传送给m的值为50,则程序输出: 7 1 1 14 21 22 28 33 35 42 44 49

admin2017-02-27  10

问题 请编写一个函数fun,它的功能是:求出1到m之间(含m)能被7或11整除的所有整数放在数组a中,通过n返回这些数的个数。例如,若传送给m的值为50,则程序输出:
    7  1 1  14  21  22  28  33  35  42  44  49
    注意:部分源程序存在文件PROG1.C中。
    请勿改动主函数mam和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include
#define M 100
void fun (int m. int *a  , int *n)
{
}
main()
{int  aa [M], n.  k;
    void NONO  ();
    fun  (50, aa, &n);
    for  (k=  0;  k    if((k+1) 0020==0)  printf("\n");
    else  printf("%4d", aa [k]);
    printf("\n");
    NONO();
}
void NONO  ()
{/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。  */
  FILE *fp,*wf  ;
  int i, n, j, k, aa[M],sum;
  fp=fopen ("in.dat","r");
  wf=fopen("out.dat","w");
  for(i=  0  ;  i  <  10  ;  i++)  {
    fscanf( fpf   "%d,",&j);
    fun (j, aa, &n);
    sum =0  ;
    for(k=0 ;  k    fprintf (wf, "%d\n", sum);
    }
    fclose( fp);
    fclose (wf);
}

选项

答案1 inti,j=0;* n=0; 2 for(i=1;i<=m;i++) 3 if (1%7==0||i%11==0) 4 { a[j]=i; 5 j++; } 6 * n=j;

解析 该题是求某范围内能被7或11整除的数。该程序的解题思路可以分解为以下几步:判断是否被7整除一判断或者是否被11整除一按要求返回计算结果。
转载请注明原文地址:https://kaotiyun.com/show/vgID777K
0

最新回复(0)