使用嵌套循环仅打印一个组合

时间:2014-09-21 12:43:27

标签: c for-loop codeblocks combinations nested-loops

我必须打印一个男人应该向收银员支付的不同纸币的组合。程序首先要求支付总金额,然后是他拥有的不同面额的记录。问题是,我必须只打印一种货币纸币组合,但我通过以下代码得到所有组合(像往常一样)。

#include <stdio.h>
int main(void)
{
    int hundred,fifty,ten,total,hund,fif,t;
    printf ("Enter amount to be paid:");
    scanf ("%d",&total);
    printf ("\n\nHow many currency notes do you have?\nEnter 100,50 and 10 Rupee Notes Respectively:\n");
    scanf ("%d %d %d",&hund,&fif,&t);

    printf ("\t\t\tPossible combination for Rs=%d/- \n",total);

    for (hundred=0; hundred<=hund; hundred++)
    {
          for (fifty=0; fifty<=fif; fifty++)
        {
            for (ten=0; ten<=t; ten++)
            {
                if ((hundred*100+fifty*50+ten*10)==total)
                {
                    printf("\n\n Hundred rupees notes=%d, 50 rupees notes=%d, 10 rupees notes=%d",hundred,fifty,ten);
                }
            }
        }
    }
    getch();
    return 0;
}

1 个答案:

答案 0 :(得分:1)

在嵌套循环中的getch();之后添加return 0;printf

另一种方法是使用goto。输入

goto exit;

在嵌套循环内的printf之后,输入

exit:

getch();之前。