麻烦请懂C++的朋友解释下这个程序

来源:百度知道 编辑:UC知道 时间:2024/06/18 14:43:17
有C++程序如下:

#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;
}

想请会的解释下这个程序,希望能一句句解释,并把结果计算出来,谢谢!

void main( )
{
int a(5),b(6),i(0),j(0);
//定义四个变量a=5,b=6,i=0,j=0:用()的/形式初始化
switch(a) //a=5
{
case 5 :switch(6) //进入switch(6)语句块
{
case 5:i++;break;
//因为是6所以不执行case 5
case 6:j++;break;
//执行这句j=0,执行完j+1,j也就等于1了,break跳出switch
}
case 6:i++;j++;break;
//因为case 5后没有break,所以接着执行case 6后语句i++,j++,
//break跳出switch
default:i++;j++;
}
cout<<i<<","<<j<<endl;//所以i=1,j=2
}

c++初始化a=5,b=6,i=0,j=0;
Switch(a)因为a=5,所以进入case 5的入口;
switch(6)进入case 6的入口,执行j++,j的结果变成1后退出里层switch
外层switch:case 5后面没有break,继续执行case 6;
执行i++,i变成1,j++,j变成2;break退出
输出结果1,2

啊 多去看看书吧。。不是很难