dimanche 10 octobre 2021

trying to make C function to count how many times a number has occured returns the same value each time

I'm having a hard time with functions, and I need to make a function to count up once when a certain number occurs. I changed the order of how the function checks the number by placing the 50 or greater check on top, but then it returns 5 only.

while (userInput != -1)
    {
        index=update_level(userInput);

        playerPoints[index]++;
        
        
        printf("INDEX %d\n",index);
        printf("ZERO %d\n",playerPoints[0]);
        printf("ONE %d\n",playerPoints[1]);
        printf("TWO %d\n",playerPoints[2]);
        printf("THREE %d\n",playerPoints[3]);
        printf("FOUR %d\n",playerPoints[4]);
        printf("FIVE %d\n",playerPoints[5]);
        
        
        printf("Player points (%d to quit): ", -1);
        scanf("%d",&userInput);
    }

Here's the function:

int update_level(int pointsAmount)
{
    int update_level = 0;
    
    if (pointsAmount >= 0&&pointsAmount <= 9);
        {
            update_level=0;
            return update_level;
        }
    if (pointsAmount >= 10&&pointsAmount <= 19);        
        {
            update_level=1;
            return update_level;
        }
    if (pointsAmount >= 20&&pointsAmount <=29);
        {
            update_level=2;
            return update_level;
        }
    if (pointsAmount >= 30&&pointsAmount <=39);
        {
            update_level=3;
            return update_level;
        }
    if (pointsAmount >= 40&&pointsAmount <=49);
        {
            update_level=4;
            return update_level;
        }
    if (pointsAmount >=50);
        {
            update_level=5;
            return update_level;
        }
}

Aucun commentaire:

Enregistrer un commentaire