
In this assignment, we will read a file full of integers, sort them,
and then search for particular values. You will do this by editing the
file "answer03.c". You should not edit any other files.

To pass this assignment, just fill in the blanks in answer03.c. The
comments in this file are there to guide you. You can (and should)
create extra functions as needed. Please take care to follow the
coding standards of the course. (For example, do not use any static
variables.)

Once you finish the solution, and it passes all of the testcases, and
everything is *neat* and *tiddy* in your source file, and you compile
without warnings, then please submit it to blackboard. 

===============================
== To Sumbit Your Assignment ==
===============================

You must submit a zip file called "pa03.zip", with precisely two files
in it: "answer03.c", and "my-log.text". You must submit only those
two files, and they must be named precisely as described.

=====================================================

In PA03-PA05, you need to show evidence of using version control.  You
can use any version control system (such as CVS, SVN, RCS...).  This
course encourages you to use github.com because you can request free
private repositories as a student.  Please visit 

https://github.com/edu

to get your free private repositories.  You *MUST* use a private
repository.  If you use a public repository (visible by everyone in
the world) and someone copies your solution, you will be considered
cheating.  You will receive F and your name will be reported to the
Dean of Students.

If you are new to version control, please understand what should be in
version control and what should not.

Version control manages different versions of the same text files, for
example, source code and Makefile.  Version control gives you
line-by-line comparison of different versions.  You should put the
text files you write into version control.

Version control does not work well with binary files because
line-by-line comparison makes no sense.  If you put binary files into
version control, the file is still saved but comparison is impossible.
As a result, putting images into version control would be
questionable.

You should *not* put computer-generated files into version
control. Examples are object files and executable.  If you write
python programs, .pyc files are computer-generated. These files change
every time you modify the source code. The source code should be
managed by version control and the object files can be regenerated.

Your Makefile should have "clean" to remove object and executable
files.  Do "make clean" before you commit.


The evidence is the log (or history) of your commit.  You should
commit often (at least once a day).  You can commit once an hour, or
even once every 10 minutes. Each commit takes a snapshot of your
programs.  If you commit, you can easily recover from mistakes.  If
you do not commit, you will not have any history of the progress.  To
meet the requirement of PA03-PA05, you must commit *at least three*
times and each of a meaningful message.  In the rare cases when a
student is suspected cheating, the student's commit log may be
considered as an evidence for defense.


For your reference, this is the commit log of the programming
assignments.

commit 5a80c29a3679fca017005c3ef0d1ea9e00f5423f
Author: amichaux <amichaux@blakes-7.(none)>
Date:   Sat Aug 24 16:00:01 2013 -0400

    PA03 is ready to go

commit d7ae597dcf8da12956fe9aab5c48252d214b3b5d
Merge: a8790ab fcd3811
Author: amichaux <amichaux@blakes-7.(none)>
Date:   Sat Aug 24 12:15:34 2013 -0400

    Fixed the Makefile for PA02
    
    Merge branch 'master' of https://github.com/yunghsianglu/ECE264Assignments

commit a8790abba502ae254c8aefd9727c769f395e9d52
Author: amichaux <amichaux@blakes-7.(none)>
Date:   Sat Aug 24 12:15:31 2013 -0400

    Fixed the Makefile for PA02

commit fcd381110dccb96da660d3d70fa6f47425bf50b5
Author: Aaron Michaux <amichaux@ecelinux12.ecn.purdue.edu>
Date:   Fri Aug 23 15:36:39 2013 -0400

    Fixed dependency -- make will compile target before running tests

commit f6765efe5359b31ba9a08662d1cade3f2ecfa780
Author: yunghsianglu <yunglu@purdue.edu>
Date:   Fri Aug 23 10:04:30 2013 -0400

    explain the assignments are graded

commit 823993f487bad3245bec8ef1948b1a42ab4c035d
Author: yunghsianglu <yunglu@purdue.edu>
Date:   Fri Aug 23 09:49:16 2013 -0400

    some hints for students

commit edc7875818342cfb6fac8ddf8043e30ad8df4977
Merge: 65427a9 c4721e7
Author: Aaron Michaux <amichaux@ecelinux12.ecn.purdue.edu>
Date:   Thu Aug 22 22:30:52 2013 -0400

    Merge branch 'master' of https://github.com/yunghsianglu/ECE264Assignments

commit 65427a9dd516eda01ce488987c1276b85cb9d47c
Author: Aaron Michaux <amichaux@ecelinux12.ecn.purdue.edu>
Date:   Thu Aug 22 22:30:43 2013 -0400

    testing now depends on the target

commit c4721e7497abcdfdb33a35e0fef99067e5585569
Author: yunghsianglu <yunglu@purdue.edu>
Date:   Thu Aug 22 18:34:58 2013 -0400

    build the program if necessary when testall

commit edc3efb4c16da07d55fb4c92e5caf53977ca8f40
Author: yunglu <yunglu@yunglu-Latitude-E6320.(none)>
Date:   Wed Aug 21 17:34:15 2013 -0400

    explain the states

commit ea01fe5c15a09c1b542bbea38fc18bc24ecb9b33
Author: yunghsianglu <yunglu@purdue.edu>
Date:   Sun Aug 18 15:13:59 2013 -0400


