有以下程序 #include main() {int i,j,m=1; for(i=1:i0;j--) { if(i*j>3)break; m*=i*j; }} printf("m=%d\n

admin2019-08-18  29

问题 有以下程序
    #include
    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循环来说,变量i从3减到1,求得变量m的值等于6。当变量i的值等于2时,第一遍执行内层for循环,变量i的值等于3,那么i*i的值等于6,其值大于3,这时执行break语句,退出内层for循环的执行。所以程序输出变量m的值为6。
转载请注明原文地址:https://jikaoti.com/ti/k7f0FFFM
0

最新回复(0)