Testing while for multiple conditions (C language)
<p>I have to create a menu wherein if the input is not valid. It should keep asking for a valid input. I've written it below (in C)</p>

<pre><code>   #include &lt;stdio.h&gt;
int main()
{
    int input = 0;
    printf("What would you like to do? \n 1 (Subtraction) \n 2 (Comparison) \n 3 (Odd/Even) \n 4 (Exit) \n ");
    scanf_s("%d", &amp;input);

    while (input != 1 || input != 2 || input != 3|| input != 4)
    {
        printf("Please enter a valid option \n");
        scanf_s("%d", &amp;input);
}   // At this point, I think it should keep testing variable input and if it's not either 1 or 2 or 3 or 4. It would keep looping.
</code></pre>

<p>But what's happening is it loops even when the input is, for example, 2.</p>