Please note that there will be no class on Monday, June 30 due to finals for the first Summer session, or July 4 due to the holiday.
Week | CS 1713 Topics and Due Dates | Suggested CS 1711 Topics |
---|---|---|
May 28/30 | Introduction to the class. Explanation of syllabus. Use of the World Wide Web, Usenet News, and E-mail. Levels of abstraction in the computer. Components of the computer. Input/Output. Number systems, representation. Bits, bytes, addresses. ASCII. Machine language. Compilers. Sample C programs. | Introduction to the lab. Some sample C programs. Description of the edit/compile/debug cycle. |
June 2/4/6 |
Assignment 1: Type-in Program
and progress report, due Friday, June 6 at midnight. Some C language data types. Statements and Expressions. Scalar variables. Precision. Output to screen/standard output, user input from keyboard/standard input. Some simple problems solved in C. | Subdirectories for projects. Use of make. |
June 9/11/13 |
Assignment 2: Simple Computations with User Input ,
and progress report due Friday, June 13 at midnight (superstitious? turn it
in Thursday). Operators and their precedence. Logical operators. Conditional statements: if/else and case. Operator side-effects. Results of operations. Data conversion - casting. | Linking. Using the -l option, particularly for linking in the math library. |
June 16/18/20 | printf is your friend. Reference parameters to standard functions (like scanf). while and for loops. Reading and writing files. Errors - run time, compile time, syntactic, semantic. Good documentation and style. | More problems solved in C. |
June 23/25/27 |
Assignment 3: if/else/switch,
and progress report due Friday, June 27 at midnight. Mathematical concept of function. Writing C functions. Conceptual difference between a function and a subroutine (i.e., void function). Value and reference parameters. Command line parameters with argc and argv | Using dbx. Examples of C programs with loops and reading/writing files. |
July 2 |
Midterm Exam on Wednesday, July 2. Begin arrays. Arrays of numbers. Sieving. Strings, standard C functions in string.h. Write our own string manipulation functions. | Examples of C functions. Separate compilation using make. |
July 7/9/11 |
Assignment 4: Loops and Files, and progress report
due Friday, July 11 at midnight. July 9 is the last day to drop this course and receive an automatic 'W'. Sorting and searching. Handwaving analysis of algorithms. Begin pointers. Begin two-dimensional arrays, arrays of pointers. Using malloc to allocate storage for arrays. | Sample programs with arrays. |
July 14/16/18 | Begin structures. typedef and header files. Abstract data types. Software engineering. | Examples of C programs with pointers. Fun with malloc. |
July 21/23/25 |
Assignment 5: Strings, and progress report
due Monday, July 21 at midnight. More abstract data types. Using structures to read/write files of records. Reading and writing structures with fread/fwrite. Stacks. Dependencies on header files in make. | Examples of abstract data types. |
July 28/30, August 1 |
Assignment 6: Final Program, and progress report
due Friday, August 1 at midnight. Miscellaneous topics. Other programming languages. Foundations of computer science. Complexity. Incompleteness. | Review for final. |