Home > Mobile >  How to insert a continue statement inside an if statement
How to insert a continue statement inside an if statement

Time:02-28

My code is below. I am using C language. I want to repeat the action from the start if the user types Y but I am confused how can I make that happen.

I tried to look for a solution but the results doesn't fit for my program.

#include <stdio.h>

int main() {

    int A, B;

    char Y, N, C;

    printf ("Enter value 1: ");
    scanf ("%i", &B);
    printf ("\nEnter value 2: ");
    scanf ("%i", &A);
    printf ("= %i", A   B);

    printf ("\n\nAdd again? Y or N\n");
    scanf ("%c", &C);
    if (C == Y) {
//This should contain the code that will repeat the:
        printf ("Enter value 1: ");
        scanf ("%i", &B);
        printf ("\nEnter value 2:
    } else if (C == N)
        printf ("PROGRAM USE ENDED.");
    else
        printf ("Error.");
}

CodePudding user response:

You should just wrap your code inside a for loop:

#include <stdio.h>

int main() {

    int A, B;
    char Y = 'Y', N = 'N', C;

    for (;;) {     // same as while(1)
        printf("Enter value 1: ");
        if (scanf("%i", &B) != 1)
            break;
        printf("\nEnter value 2: ");
        if (scanf("%i", &A) != 1)
            break;

        printf("%i   %i = %i\n", A, B, A   B);

        printf("\n\nAdd again? Y or N\n");
        // note the initial space to skip the pending newline and other whitespace
        if (scanf(" %c", &C) != 1 || C != Y)
            break;
    }
    printf("PROGRAM USE ENDED.\n");
    return 0;
}

CodePudding user response:

There are a lot of errors in your program. Syntax error: please resolve it on your own. There is no need for Y and N to be declared as character, you can use them directly as they are not storing any value. NOW, there is no need for continue you can use while loop. I have resolved your problem. Please take a look

Also, you are using a lot of scanf so there is an input buffer, a simple solution to it is using getchar() which consumes the enter key spaces.

#include <stdio.h>

int main()
{

int A, B;

char C = 'Y';
while (C == 'Y')
{
    printf("Enter value 1: ");
    scanf("%i", &B);
    printf("\nEnter value 2");
    scanf("%i", &A);
    printf("= %i\n", A   B);
    getchar();
    printf("\n\nAdd again? Y or N\n");
    scanf("%c", &C);
}
if (C == 'N')
{
    printf("PROGRAM USE ENDED.");
}
else
{

    printf("Error.");
}
}
  • Related