问题 填空题

以下程序运行的输出结果是______。
#include<stdio.h>
#define M 100
void fun(int m,int *a,int *n)
int i,j=0;
for(i=1;j<=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

问答题
选择题