问题
填空题
下列程序的运行结果是 【17】 。
#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");
答案
参考答案:G
解析: 程序中的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