Machine-translated by Google. Questions are authored in English.
Top

Discussion

What is the output of this C code?    

void main()
    {
        int x = 0;
        if (x = 0)
            printf("Its zero\n");
        else
            printf("Its not zero\n");
    }

 

  • A.Its not zero
  • B.Its zero
  • C.Run time error
  • D.None

Answer: A

Correct answer: Its not zero

if (x = 0) uses the assignment operator, not ==. It assigns 0 to x, and the value of the assignment expression is that same 0, which is false. So the else branch runs and it prints Its not zero - the classic typo that compilers now warn about.

No comment is present. Be the first to comment.
Loading…

Post your comment

Please log in or register to post a comment.