This output is indeed not very helpful. I guess they create a "properly formatted" version of the script and apply a generic diff tool (you can learn more about those later in the course, in the "similarities/more" problem). Easy solutions coming to my mind would cause serious limitations.
It's usually considered good style to add a single space on both ...
INT02-C. Understand integer conversion rules
Conversions can occur explicitly as the result of a cast or implicitly
as required by an operation. Although conversions are generally
required for the correct execution of a program, they can also lead to
lost or misinterpreted data. Conversion of an operand value to a
compatible type causes no ...
Looks like C is (internally) casting the constant 2 (or probably more correctly, the result of n - 2) as an int since that is the essential difference between the two printfs.
You might search the internet-at-large for "C integer promotion rules". There are a lot of hits on the subject. This might be an interesting place to start.
Do while behaves slightly different than while. You managed to find the exact difference :).
Do while executes the code inside once and then checks your condition.
That means in all cases the Do While will run at least once even if condition is not met. As such you put 0.50 the first Do while(for the 25) runs twice until the condition fails and then the ...
The short answer is that you're using the wrong format code. While you can cast the values and make it work, it would be easier to just use the correct code, %lu, for an unsigned long. google printf format codes for more extensive info on the subject.
If this answers your question, please click on the check mark to accept. Let's keep up on forum ...
It is because your Compiler warnings are ON. The return type of sizeof() function is size_t. It is System and Compiler dependant. May be if you Compiler your code on 32 bit machine, it will have difference results and on 64 bit different.
According to the 1999 ISO C standard (C99), size_t is an unsigned integer type of at least 16 bit (see sections 7.17 ...