从循环的嵌套中跳出

本文通过一个C语言程序展示了如何使用一角、两角和五角硬币组合成指定金额,并利用goto语句在找到一种组合后立即跳出循环,避免重复输出。程序包括三层循环嵌套,分别对应一角、两角和五角硬币的数量,通过条件判断找到满足条件的组合。
摘要由CSDN通过智能技术生成

让我们先写一个程序:

用一角钱、两角钱、五角钱组成几元钱的方式。

例:两个一角钱加四个两角钱加两个五角钱可以组成两块钱。

还是先讲思路:

1.要先将“元”转换成“角”。也就是将输入的值*10,转化成以角为单位的。

2.再用for循环进行循环的嵌套。(其他循环也可以)

3.当数值小于输入几元的时候,一个一个进行加。

看我的代码段:

#include<stdio.h>
int main()
{
	int x;
	scanf("%d",&x);
	int one,two,five;      //one表示一角, 
	for(one=1;one<x*10;one++)
   {for(two=1;two<x*10/2;two++)
   {for(five=1;five<x*10/5;five++)
   {if(one+two*2+five*5==x*10)
   {printf("可以用%d个一角%d个两角%d个五角换成%d元\n",one,two,five);
   }
   }
   }
   }
   return 0;
}

这时候就把所有的可能值排列出来了。

然后然后然后,重点来了呀,看标题,今天我们可是写怎样从循环中跳出呀,让我们把目光转回到跳出循环嵌套吧。

我们可以用goto   ,goto直接跳到所指方向,(我所指的方向,是有你的地方。哈哈哈,又傻傻的·了)

看一眼代码就明白啦:

#include<stdio.h>
int main()
{
	int x;
	scanf("%d",&x);
	int one,two,five;      //one表示一角, 
	for(one=1;one<x*10;one++)
   {for(two=1;two<x*10/2;two++)
   {for(five=1;five<x*10/5;five++)
   {if(one+two*2+five*5==x*10)
   {printf("可以用%d个一角%d个两角%d个五角换成%d元\n",one,two,five);
   goto out;
   }
   }
   }
   }
   out:
   return 0;
}

这样就是只输出一种方案的时候就停止啦。因为已经满足   if   里面的条件了。

一定要亲手写写看,加油吧,少年。

加油吧

                                                                                                                                   晚上11点20分

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值