有以下程序 #include <stdio.h> main() { int i,j,m=1; for(i=1;i<3;i++) { for(j=3;j>0;j--) { if(i*j>3)break; m*=i*j

admin2018-10-16  30

问题 有以下程序
#include  <stdio.h>
main()
{   int i,j,m=1;
for(i=1;i<3;i++)
    {  for(j=3;j>0;j--)
{  if(i*j>3)break;
           m*=i*j;
        }
     }
   printf("m=%d\n",m);
}
程序运行后的输出结果是

选项 A、m=2
B、m=4
C、m=5
D、m=6

答案D

解析 这道题考查了for循环的嵌套应用。对于外层for循环来说,变量i从1增到2,循环执行2次。当变量i的值等于1时,对于内层for循环来说,变量j从3减到1,求得变量m的值等于6。当变量i的值等于2时,第一遍执行内层for循环,变量j的值等于3,那么i*j的值等于6,其值大于3,这时执行break语句,退出内层for循环的执行。所以程序输出变量m的值为6。
转载请注明原文地址:https://jikaoti.com/ti/72a0FFFM
0

最新回复(0)