您的位置:首页 > 编程语言 > C语言/C++

关于C语言实现兑换钱的问题

2018-02-11 19:54 225 查看
#include <stdio.h>

int main()
{
int x;
int one, two, five;
int exit = 0;

scanf("%d", &x);
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个1角加%d个2角加%d个5角得到%d元\n",
one, two, five, x);
exit = 1;
break;
}
}
if ( exit == 1 ) break;
}
if ( exit == 1 ) break;
}

return 0;
}
设置one,two,five为1角,两角,五角。通过输入x的值来判断总共要兑换多少钱。
exit变量是为了实现只要出现一种情况就输出,设置break直接跳出循环。注:break只能跳出其所在的这一层循环
也可以用goto out语句跳出。不过一般不建议使用。 if ( one + two*2 + five*5 == x*10 ) {
printf("可以用%d个1角加%d个2角加%d个5角得到%d元\n",
one, two, five, x);
goto out;
}
}
}
}
out:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: