sub(intn){if(n2)return3;return1;if(n>5)return2;}main(){inta=10;printf(sub(a));

问题描述:

sub(intn){if(n2)return3;return1;if(n>5)return2;}main(){inta=10;printf(sub(a));

3
严格来讲会出错答案是1.。。不可能,我编译过发现题目打错了,那边应该是else if(n>12)return3;return1;为什么答案是1?if(n12)return 3;//10>12 falsereturn 1;//无判断条件,那肯定返回这个啊,程序返回到printf("%d\n",sub(a));输出,退出 if(n>5)return 2;//已经return了,程序不会走到这步