1. Program Correctness (75%): The programs do everything that the lab requires. If you have a question about how a program handles a certain input, check the executables that have been provided.

    1. countVotes (75 points) deduct 5 points for not using the fields library and 20 points for not using my sllist library.
      • prints the correct winner (20 points)
      • the percentage is correctly output in a field that provides space for two digits to the left of the decimal point and 1 digit to the right of the decimal point. The percentage is terminated with a % sign (10 points)
      • correctly handles a tie (20 points)
      • handles empty files (5 points)
      • handles extremely large files (5 points)
      • handles similar names with more than one space between names (e.g., "Brad Vander Zanden" and "Brad Vander Zanden" are equivalent) (5 points)
      • error conditions
        • handles wrong number of command line arguments (5 points)
        • nicely handles filenames that do not exist using perror (5 points)

  2. Commenting (15%): See the commenting information on the course's lab web page for advice on how to comment your programs,

  3. Program Style (10%): Are the programs well-organized and do they solve the problem in the most straightforward, efficient way possible?