有以下程序: #include<stdio.h> main() { int k=5,n=0; do { switch(k) { ease 1:ease 3:n+=1;k--;break; def

admin2020-11-27  30

问题 有以下程序:
    #include<stdio.h>
    main()
    {  int k=5,n=0;
    do
    {  switch(k)
    {  ease 1:ease 3:n+=1;k--;break;
    default:n=0;k--;
    ease 2:ease 4:n+=2;k--;break;
    }
    printf(’’%d’’,n);
    }while(k>0 && n<5);
    }
    程序运行后的输出结果是(    )。

选项 A、02356
B、0235
C、235
D、2356

答案C

解析 k的值为5,逐个对case语句进行匹配,均不匹配,执行default下的语句n=0;k--。再执行case2:case4:后面的语句n+=2;k--;。执行break语句跳出switch判断,打印n的值,即2。经过第一次循环后,k的值为3,然后进行k>0 && n<5条件判断为真。第二次执行循环体,执行case3:后面的语句n+=1;k--;。再执行break语句跳出循环,此时打印n的值3,此时k的值为2。第三次执行循环体k的值为2,满足条件,执行case2:case4:后面的语句n+=2;k--;。执行break语句跳出循环体,打印n的值5。此时n不满足条件k>0 && n<5,所以结束循环。整个程序的打印结果为235。
转载请注明原文地址:https://kaotiyun.com/show/1ztp777K
0

最新回复(0)