Maximum possibility of banknotes to keep into the given integer value Banknotes are given specifically 100, 50, 20, 10, 5, 2, 1. Required to check and find out: What is the maximum possibility to keep these individually into the given integer value.
For example:
input: 576
output: 576
        5 nota(s) de R$ 100,00
        1 nota(s) de R$ 50,00
        1 nota(s) de R$ 20,00
        0 nota(s) de R$ 10,00
        1 nota(s) de R$ 5,00
        0 nota(s) de R$ 2,00
        1 nota(s) de R$ 1,00

I have solved this problem by following this strategy-&gt;
#include &lt;stdio.h&gt;
int main(){

    int number, count = 0, occupied = 0, number_update, i;
    int a = 100;
    scanf(&quot;%d&quot;,&amp;number);
    number_update = number;
    printf(&quot;%d\n&quot;,number);

    //Getting the number that can be stored maximum in the given integer.
    for (i = 0; i &lt; 7; i++){
        count = 0;

        while (a &lt;= number_update){
        count++;
        occupied = occupied + a;
        number_update = number_update - a;
        }
        printf(&quot;%d nota(s) de R$ %d,00\n&quot;,count,a);
        number_update = number - occupied;

        if (i == 0){
         a = a-50;

        }

        else if (i == 1){
            a = a-30;
        }

        else if (i == 2){
            a = a-10;
        }

        else if (i == 3){
            a = a-5;
        }

        else if (i == 4){
            a = a-3;
        }

        else {
            a = a-1;
        }

       }
        return 0;
}

I am here for:
Would you propose any simplification from my existing solution?
Will I face any problem with some conditions?
The way I followed to solve this problem. Is it ok or not?
Don't use the for-case antipattern
You are using the for-case antipattern, which you should almost always avoid. Instead, find some way to simplify your code. For example, instead of hardcoding the denominations in the if-statements, put them in an array:
static const int denominations[] = {100, 50, 20, 10, 5, 2, 1};
static const int n_denominations = sizeof denominations / sizeof *denominations;

Then use it like so:
for (int i = 0; i &lt; n_denominations; i++) {
    count = 0;

    while (number &gt;= denominations[i]) {
        count++;
        number -= denominations[i];
    }

    printf(&quot;%d nota(s) de R$ %d,00\n&quot;, count, denominations[i]);
}