C语言重来28:如何离开多重循环

还是用一个程序的题目来展开这一节:

凑硬币:
如何用1角、2角、5角的硬币凑出10元以下的金额呢?

我们来看一下,三个for循环的代码:

题目改变一下:我们只要求输出一次3种硬币的组合就可以了,这个时候可以终止循环了。

注意,break和continue的使用条件是只能跳出它所在的那一个循环,如果外面还有更多的循环,那样的话,就再跳不出去了。

我们这边还是使用跟前面几乎一样的方法来进行处理,就是,设定一个变量,当钱数可以表示的时候,这个变量被赋值,然后在后面的每一个循环的结束之前,加上一个if的条件语句,如果满足这个条件的话,那就执行这一重循环的break的语句。

我们再来看一下这个代码 :

上面这个称之为:接力break.

当然我们还有其他的方法:

用goto函数,这个函数的具体的用法在下面的代码的注释里面有:

当前只在有多重循环的地方使用goto,这样才能使整个程序更有逻辑感,不必像一个传送门一样来回的飘动。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值