一道c++的题,求他的意思!!

来源:百度知道 编辑:UC知道 时间:2024/06/02 11:53:37
#include<iostream.h>
void main()
{
int a(1),b(2),c(3),d(10);
if(!a)
d--;
else if(b)
if(c)
d=5;
else
d=6;
d++;
cout<<d<<endl;
if(a<b)
if(a!=3)
if(!c)
a=1;
else if(c)
a=5;
d+=2;
cout<<d<<endl;
}

结果是
6
8

void main()
{
....int a(1),b(2),c(3),d(10);
....if(!a)
.....{
........d--; //不执行
.....}
....else if(b)
....{
........if(c)
........{
............d=5; //执行
........}
........else
........{
...........d=6; //不执行
........}
....}
....d++; //执行
....cout<<d<<endl; //d=6
....if(a<b) //执行
....{
........if(a!=3) //执行
........{
............if(!c) //不执行
............{
................a=1;
............}
............else if(c) //执行
............{
.................a=5;
.............}
........}
....}
....d+=2; //执行
....cout<<d<<endl; //d=8
}

良好的编程习惯会让你更好发现错误
这个考察if 语句的就近匹配原则