下列程序的运行结果是【 】。 #include <stdio.h> #define M 100 void fun(int m,int *a,int *n) { int i,j=0; for(i=1;i<=m;

admin2009-01-15  39

问题 下列程序的运行结果是【  】。
   #include   <stdio.h>
   #define M 100
   void fun(int m,int *a,int *n)
   {   int i,j=0;
       for(i=1;i<=m; i++)
          if(i%7==0||i%11==0)  a[j++]=i;
       *n=j;
   }
   main()
   {  int aa[M],n,k;
      fun(10,aa,&n);
      for(k=0;k<n;k++)
         if((k+1)%20==0)  printf("\n");
         else printf("%4d",aa[k]);
      printf("\n");
   }

选项

答案7

解析 程序中的if(i%7==0||i%11==0)是找出能被7或11整除的所有整数, a[j++]=i是将满足条件的数放到a数组中,变量j记录了满足条件的数据个数,main函数通过变量n得到此数据个数。如果m的值为50,即表达式fun(10,aa,&n)为fun(50,aa,&n)时,输出结果为:7    11  14  21  22  28  33  35  42  44  49
转载请注明原文地址:https://jikaoti.com/ti/smK0FFFM
0

最新回复(0)