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

如下,我的理解哪里有问题呢?请指点!谢谢!

如下,我的理解哪里有问题呢?请指点!谢谢!

慕勒3428872 2022-08-04 15:11:35
int judge_city(int num){int i;for (i=0;i<3;i++){if(num > 10) return(0);}return(1);}请问这段code,如果提供的num是12,大于10了,按说那函数返回的是0,但我总觉得最后return(1)由于没有放入else中,就表示这是函数会执行的一句,那最后无论num是多少,这个函数都会返回1的?
查看完整描述

3 回答

?
料青山看我应如是

TA贡献1772条经验 获得超8个赞

首先,每个函数是有自己的入口和出口的,这个函数也一样,但是由于用了两个Return,就相当于设置了两个出口。当12 > 10时就从Return 0出去,否则从Return1 出去。

查看完整回答
反对 回复 2022-08-08
?
沧海一幻觉

TA贡献1824条经验 获得超5个赞

不是这样的。执行return(0)后,程序就跳出这个函数了,因而不会执行到return(1)这个地方。

查看完整回答
反对 回复 2022-08-08
?
拉丁的传说

TA贡献1789条经验 获得超8个赞

如果for中的if 执行了return语句,那这个函数就结束了,就算for还没循环完也结束了,那就不会执行到后面的return 1; 了

查看完整回答
反对 回复 2022-08-08
  • 3 回答
  • 0 关注
  • 116 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信