为了账号安全,请及时绑定邮箱和手机立即绑定

为什么例题中没用break;而作业中要用?

 if(arr[i]==value)
{
	index=i;
	break;
}

正在回答

2 回答

例题中,直接if语句返回i,或者循环结束返回-1,故最后显示的下标是数组中第一个出现的8的下标(如果数组有好几个8的话)

作业中,if语句中未直接返回i,而是赋值给index,else同样赋值给index,最后返回index,在main中将返回的index赋给index(如果只是找一个下标的话我觉得这样写有点多此一举)。if中如果有break,即第一个满足if条件的下标给index,然后退出循环,故最终显示的就是第一个8的下标;如果没有break,那么循环执行完整,下一个满足条件的下标覆盖上一个满足条件的下标赋给index,那么如果数组出现多个8,输出的就是最后一个8的下标。

1 回复 有任何疑惑可以回复我~

又不是循环干嘛用break

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么例题中没用break;而作业中要用?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信