一个C语言函数,求计算结果

来源:百度知道 编辑:UC知道 时间:2024/06/09 09:42:37
#include<iostream.h>
Void main()
{int a(5),b(6),i(0),j(0);
switch(a)
{case 5: switch(6)
{ case 5:i++;break;
case 6:j++;break;
}
case 6:i++;j++;break;
default:i++;j++;
}
cout<<i<<","<<j<<endl;
}

首先a的值是5,所以最外层switch中的case 5:后面的switch语句首先执行(即执行j++),然后break跳出内层的switch语句。
由于外层switch的case5:后面的语句中没有break;所以继续执行外层的case6:后面的语句(即执行i++,j++,break).然后跳出外层switch语句。
这样i++一次, j++两次
故答案为1,2

不是脑筋急转弯吧。哪有计算结果?
代码不是C语言,是C++。
编译都通不过,只有编译错误结果没有计算结果。
代码错误改完了,编译运行就有结果了,还用问吗?

自己理清逻辑关系吧 1 2

1,2