有一个测试不正确
#include<stdio.h>
int main(void)
{
int n, fen5, fen2, fen1 = 0, i = 0;
scanf("%d", &n);
while (i <= n)
{
for (fen5 = 1; fen5 * 5 < 150; fen5++)
{
for (fen2 = 1; 150 - fen5 * 5 - fen2 * 2 > 0; fen2++)
{
for(fen1=1;fen1<98;fen1++)
{
if (fen5*5+fen2*2+fen1==150&&fen5 + fen2 + fen1 == 100)
{
printf("%d %d %d\n", fen5, fen2, fen1);
i++;
if(fen5==29&&fen2==2&&fen1==2)
goto loop;
if (i < n)
break;
if(i==n)
goto loop;
}
}
}
}
}
loop:
return 0;
}
我
的解答思路和尝试过的方法 :就嵌套循环啊,找不到问题在哪
1元5角钱人民币兑换5分、2分和1分的硬币(每一种都要有)共100枚,会有很多种兑换方案。请编写程序给出各种兑换方案。
输入格式:
输入为一个正整数n,表示要求输出前n种可能的方案。方案的顺序,是按照5分硬币从少到多排列的。
输出格式:
显示前n种方案中5分、2分、1分硬币各多少枚。每行显示一种方案,数字之间空一格,最后一个数字后没有空格。
注意:如果全部方案不到n种,就顺序输出全部可能的方案。