【发布时间】:2012-11-01 12:55:23
【问题描述】:
int n=5;
int q=(n+3)/4;
switch(n%4)
{
case 0:do{ n++;
case 3:n++;
case 2:n++;
case 1:n++;}while(--q>0);
}
cout<<n;
n 的值是多少? 这只是代码 sn-p,给出的答案是 10。看不到怎么做?
【问题讨论】:
-
使其编译并使用调试器单步调试并观察变量变化
-
案例标签只是标签,
switch只是一个goto。也许这有帮助。 -
一步一步来。进入开关前
n和q多少钱?执行到什么情况下?之后会发生什么? -
我认为
n最后应该是12,而不是10。 -
嗯,我在这里学到了一些东西,达夫的装置。在我所有的 c 编程年之后,我从来没有写过像这样令人费解和不可读的东西。