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

admin2013-02-23  43

问题 以下程序运行的结果是【  】。
   #include<conio.h>
   #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;
     clrscr();
     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

解析 解答本题的关键是要读懂程序,要找出能被 7或11整除的所有整数,注意数学中的“或”和C语言中的“或”的区别,但在此处,if条件语句中用了“‖”运算符,若要找能同时被7和11整除的所有整数则在if的条件中应使用“&&”运算符。
   当然,如果m的值输入50,即表达式fun(10,aa, &n);为fun(50,aa,&n);时输入结果为:7 11 14 21 22 28 33 35 42 44 49。
转载请注明原文地址:https://kaotiyun.com/show/woJp777K
0

最新回复(0)