【C++】if-else编程陷阱

前两天帮学妹调试代码,总结一个关于if-else的注意点,源代码记不住了,例如有如下代码:

if(a>10){
	cout<<"a大于10"<<endl;
}else if(a>5){
	cout<<"a大于5"<<endl;
}else{
	cout<<"其他情况"<<endl;
}

如果a=11,以前认为只会输出:

a大于10

但其实会输出:

a大于10
a大于5

原因在于判断条件有重叠部分,而a取11正好就落在那个重叠部分里。

posted on 2020-05-14 10:47  丁错儿  阅读(11)  评论(0编辑  收藏  举报

导航