C语言:为什么在函数中用一个循环语句加上一个条件判断不能正确地返回结果,如图。

然而去掉else就能正确地返回结果?
2024-12-29 11:02:22
推荐回答(2个)
回答1:

在这个for循环里面呢,一旦运行到return就会跳出循环。
你的第一个这个if-else语句是一个整体,一般情况下我们最好在外面给它加个括号,规范一点。首先i=0的时候,就已经return出来-3了,循环就结束了。
第二个是没有else的,你看return i和return-3之间是不是有一个分号,它们是分开的,for循环是和分号之前的进行,运行到i=2的时候,就return 2了,至于下面分号后面的return-3就没有机会运行了。

回答2:

for语句下的语句你得加花括号才能保证以下语句全在循环里。