While grading your programming assignments, TAs see some trends that are causing students to lose points. Note that in the grading scale:

************************************************************************************************************************
In addition to the points received according to the rubrics above, get one more point if 
  a. in the self-evaluation report, the student does describe sufficient test cases and results that are verified by a peer reviewer (0.5 point), and
  b. the source code is well indented and commented to make it visually very readable (0.5 point).
************************************************************************************************************************


First and foremost, you should have a peer reviewer review the behavior of your program before you submit the work.
You should run your test cases and show the results to the reviewer and/or you can have the reviewer directly runs your program through some test cases. When Dr. Lin says describe sufficient test cases, it means that you have to describe the process that was taken and what dates were used. Test cases do not refer to a description of steps taken, its actual cases you and the reviewer used to check the validity of your program. For Program 1A, you and the peer reviewer should have, at the minimum, checked and wrote down test cases (Dates) to check:

1, if taxday comes after ground hog day will it return greater. Write down date used and result
2. if taxday comes before ground hog day will it return less. Write down date used and result
3. if taxday and ground hog day is equal will it return equal. Write down date used and result.
4. you should also have multiple test dates with different and same centuries.

Secondly, Dr Lin's comments alone do not count as the source code being well commented.
Everyone writes code differently and this is to help us see what you are doing. This is a very easy .5 points to get so don't lose points by not commenting. Once you get out of school and work in the industry, you will work in a team and if you do not comment, people won't know what it is your doing. 

When a sample executable is provided along with the programming assignment (such as in 1A and 1B), you can run it to concretely see what is expected in the end and compare the behavior of the sample executable with that of your programs.
Please make sure you extensively test your cases, document them, and submit it. Don't lie about it since it’s really obvious when your test cases fail. Also, make sure to check your code on Visual Studios. It is really easy to tell if you haven't and XCode may give you issues on some of these. It takes a few minutes to email you yourself and just run the executable.