UCR CS 14: Introduction to Data Structures and Algorithms

Spring Quarter 2003 / Class webpage




Lab 03

Remember, in this course, all programming will be done under the Linux operating system, using standard programming tools for that environment. Linux is a free operating system, available for all to download (RH), (Mandrake) and use with no cost. Linux itself is about a decade old, but in conjunction with a set of free utilities from the GNU project, behaves like a member of the UNIX family of operating systems.

Tutorials on Linux are available all over the Internet, Google for "Linux tutorial" and find one that suits you, or just try this one.

Also, we will be grading your programs with the -Wall -Werror compilation options, as always. If your program does not compile with these flags, it will not be evaluated.

In this lab, we will work with testing.

"Thinking about potential problems as you code is a good start. Systematic testing, from easy tests to elaborate ones, helps ensure that programs begin life working correctly and remain correct as they grow. Automation helps to eliminate manual processes and encourages extensive testing. And there are plenty tricks of the trade that programmers have learned from experience" *.

With this in mind, your task is test and correct the codes below (code style and user interface also collaborate to your grade).



Turn-in

7 points possible


Miscellaneous Tasks

1 point possible

Attendance for the full lab period is mandatory. Try working on some of the following short tasks.



Bonus, more 0.4 points



Hints and considerations

For more details, check:
   * KERNIGHAN, B.W., PIKE, R. The Practice of Programming. Addison-Wesley 1999.



Did you know?