最终结果:2 3 4 5
分析:
step1、第一次循环(结果为n=2,k=3):初始时,k=5,n=0,不管while先执行一遍do:switch执行default---即执行:令n=0,k自减变成4,因为default中没有break,所以继续执行case2一行的指令,即:令n自加2变成2,k自减变成3,遇到break,switch结束,输出一次n,即2。第一次循环结束。
step2、第二次循环:此时n=2,k=3,符合while语句,执行循环switch---case3:n自加1变成3,遇到break,switch结束,输出一次n,即3。第二次循环结束。
step3、第三次循环:此时n=3,k=3,符合while语句,执行循环switch---case3:n自加1变成4,break ,switch结束,输出n,即4。第三次循环结束。
step4、第四次循环:此时n=4,k=3,符合while,执行循环switch---case3:n自加1变成5,break,switch结束,输出n,即5。第四次循环结束。
step5、第五次循环:此时n=5,k=3,不符合while(k>0&&n<5),所以整个循环结束。
程序结束。
[
本帖最后由 jess_darling 于 2011-1-16 11:13 编辑 ]