Possible answer to the post title: Their quiz-taking webapp is terrible. You can't retake the quiz or review previous questions, and can only try each question once, and if you go back and choose a different radio button as an answer for a previous question, it answers the current question instead (basically throwing away your answer).<p>So maybe people just couldn't use their damn webapp.<p>Several of their questions:<p>Which of the following is the most portable way to declare a C preprocessor constant for the number of seconds in a (non-leap) calendar year?<p><pre><code>    #define SECONDS_PER_YEAR 60 * 60 * 24 * 365
    #define SECONDS_PER_YEAR 60 * 60 * 24 * 365;
    #define SECONDS_PER_YEAR (60 * 60 * 24 * 365UL)
    #define SECONDS_PER_YEAR (60 * 60 * 24 * 365)
</code></pre>
Which of the following is the most flexible way to declare a C preprocessor macro that takes two arguments and returns the smaller of their two values?<p><pre><code>    #define MIN(A, B) ((A) &#60; (B) ? (A) : (B))
    #define MIN(A, B) { if (A &#60; B) A; else B; }
    #define MIN(A, B) ((A &#60; B) ? A : B)
    #define MIN(A, B) A &#60; B ? A : B;
</code></pre>
Which of the following constructs can be used to create a portable infinite loop in C?<p><pre><code>    while (1) { ... }
    for (;;) { ... }
    loop: ... goto loop;
    All of the above
</code></pre>
And then they asked a question which says "what was the intended effect of [some terribly misleading line of C]" and I became fed up, because I have no idea what the intent was, even if I could figure out the actual behaviour.