Basic Information
Term: Spring, 2010 Time: MoWeFr 10 am - 10:50 am Location: EBW 245
Instructor: Prof. Jianlin Cheng Office: EBW 109 Office Hours: MoWe 9 am - 10 am Phone: 882-7306 Email: chengji@missouri.edu
Lab Session (optional): 2 pm - 4 pm, MoWeTh Location: EBW 120
TA: Xin Deng (grader) and Xie Sun (lab instructor) Office: EBW 239 Email: mu.cs2110@gmail.com TA Office Hours: Mo 11 am - 12:30 pm and Th 9 am - 10 am
Text Book (required): The C programming language. Prentice Hall, 1988. [available at Amazon].
Class Schedule
Date | Content and Reading Materials | Assignment | Reading | Lab Exercise (optional) |
May 14 | Final project program, report, and peer review form due | |||
May 13 | Final exam, 10:30-12:30, EBW 245 | |||
May 5 | Review for the final exam | |||
May 3 | C++ Introduction | The content of this lecture won't appear in the final exam. | ||
April 30 | Chapter 7 | Pages 162-168 | Examples discussed in the class | |
April 28 | Chapter 7 | Pages 156-161 | Examples discussed in the class | |
April 26 | Chapter 7 | Pages 151-156 | Examples discussed in the class | |
April 23 | Chapter 6 | Exercise 6-5 (5 points, optional, bonus), 7-4 (5 points, optional, bonus). Due on May 2. | Pages 145-149 | Examples discussed in the class |
April 21 | Chapter 6 | Pages 143-145 | Examples discussed in the class | |
April 19 | Chapter 6 | Exercise 6-4 (30 points, due April 26). Fill out the Peer Evaluation Form to fairly assess the effort of the members of your project group (10 points, due on May 14). You may submit the form electronically or in hard copy. | Pages 139 - 143 | Examples discussed in the class |
April 12 | Chapter 6 | Pages 127 - 132 | Examples discussed in the class | |
April 9 | Chapter 5 | Pages 118 - 122 | Examples discussed in the class | |
April 7 | Chapter 5 | Exercise 5-9 (20 points), Exercise 5-14 (20 points). Due 4/14 | Pages 111 - 118 | Examples discussed in the class |
April 5 | Chapter 5 | Pages 111 - 115 | Examples discussed in the class | |
March 26 | Chapter 5 | Pages 109 - 114 | Examples discussed in the class | |
March 24 | Chapter 5 | Pages 107 - 110 | Examples discussed in the class | |
March 22 | Chapter 5 | Pages 102 - 106 | Examples discussed in the class | |
March 17 | Chapter 5 | Exercise 5-2 (20 points. only need to write getfloat program and don't need to answer the "what type" question), 5-3 (20 points), 5-4 (20 points), due March 26 | Pages 98 - 103 | Examples discussed in the class |
March 15 | Chapter 5 | Pages 95 - 98 | Examples discussed in the class | |
March 12 | Midterm Exam | |||
March 10 | Midterm Reivew and Chapter 5 | |||
March 8 | Chapter 4 | Chapter 4, Pages 87 - 92 | Examples discussed in class | |
March 5 | Chapter 4 | Chapter 4, Pages 83 - 88 | Examples discussed in class | |
March 3 | Chapter 4 | Exercise 4-4 (10 points), 4-7 (10 points), 4-8 (10 points), 4-11 (10 points), 4-13 (optional, bonus points, 5 points), due 11:30pm, March 9 | Chapter 4, Pages 80 - 86 | Examples discussed in class |
March 1 | Chapter 4 | Chapter 4, Pages 75 - 83 | Examples discussed in class | |
Feb. 26 | Project Description | Exercise 4-1 (15 points), Exercise 4-2 (15 points), due 11:30 pm, March 2 | ||
Feb. 24 | Chapter 4: Function and Program Structure | Chapter 4, pages 71-75 | Examples discussed in class. | |
Feb. 22 | Chapter 4: Function and Program Structure | Chapter 4, pages 67-72 | Examples discussed in class. | |
Feb. 19 | Chapter 3: Control Flow | Exercise 3-1 (10 points, you only need to write a program and you may skip measuring the running time), Exercise 3-2 (20 points), Exercise 3-6 (15 points), due 11:30 pm, Feb. 23 | Chapter 3, pages 60-66 | Examples discussed in class. |
Feb. 17 | Chapter 3: Control Flow | Chapter 3, pages 55-63 | Examples discussed in class. | |
Feb. 15 | Chapter 2: Types, Operators, and Expressions | Chapter 2, pages 50-54 | Examples discussed in class. | |
Feb. 12 | Class was canceled due to snow | |||
Feb. 10 | Chapter 2: Types, Operators, and Expressions | Chapter 2, pages 48-54 | Examples discussed in class. | |
Feb. 8 | Chapter 2: Types, Operators, and Expressions | Exercise 2-3 (10 points), Exercise 2-4 (10 points), Exercise 2-5 (10 points), Exercise 2-6 (10 points), Exercise 2-7 (10 points), Exercise 2-10 (10 points). Due 11:30 pm, Feb. 13. | Chapter 2, pages 43-50 | Examples discussed in class. |
Feb. 5 | Chapter 2: Types, Operators, and Expressions | Chapter 2, pages 40-48 | Examples discussed in class. | |
Feb. 3 | Chapter 2: Types, Operators, and Expressions | Chapter 2, pages 35-42 | Examples discussed in class. | |
Feb. 1 | Chapter 1: Introduction | Exercises 1-12 (10 points), 1-13 (10 points), 1-15 (10 points), 1-17 (10 points), 1-18 (10 points), 1-23 (optional, bonus points 15 points), due at 11:30 pm, Feb. 5 | Chapter 1, pages 24-30 | Exercises 1-14, 1-16, 1-19, Examples discussed in class. |
Jan. 29 | Chapter 1: Introduction | Chapter 1, pages 28-34 | Examples discussed in class. | |
Jan. 27 | Chapter 1: Introduction | Chapter 1, pages 17-24 | Exercises 1-11, 1-13 and examples discussed in class. | |
Jan. 25 | Chapter 1: Introduction | Excise 1-5 on page 14 (10 points); Exercise 1-7 on page 17 (5 points); Exercise 1-9 on page 20 (10 points). Due 11:30 pm, Sun (Jan. 31), Email your programs (one .c file per excise) to mu.cs2110@gmail.com | Chapter 1, pages 11-20 | Exercises 1-4, 1-6, 1-8, 1-10 and examples discussed in class. |
Jan. 22 | Chapter 1: Introduction | On page 13, Excise 1-3 (10 points). Due 11:30 pm, Wed (Jan. 27). Email your programs (one .c file per excise) to mu.cs2110@gmail.com | Chapter 1, pages 5-15 | Examples or excises covered so far. |
Jan. 20 | Syllabus and Chapter 1: Introduction | No | Chapter 1 | exercises and examples in chapter 1 |
Lab Session
The course provides optional lab sessiions for students to practice programming skills under the supervision of the lab instructor Sun Xie. The programming environment in the lab is Linux.Project
There is one team project spanning the entire course. Each team has four or five students. The project description is here. Team work is important for the course project and will be counted into final grade (see Syllabus for details). A peer evaluation form is available here.
Project report and program is due May 14, 2010 (Friday).
Exams
Midterm (covering Chapters 1-4): 3/12/2010, Friday.
Final: May 13, 2010, 10:30 - 12:30, Thursday, in EBW 245 according to the registrar's schedule.
Programming Resources
1. How to connect to a Linux / Unix server such as babbage.cs.missouri.edu? On Unix and Linux computers, use command "ssh". On Window, use a tool called "putty". You can download putty here. The lab has about 30 Linux computers, where you can do programming exercises and homework. A short Linux tutorial is here. 2. How to transfer a file between my desktop and a Linux / Unix server? Use a ftp tool. On Linux you can use command "sftp". On Windows you can use a tool "WinSCP". You can downlod "WinSCP" here. 3. How to edit / write a program. Any text editor (TextPad, Visual C++, Emacs, and vi) will work. My favorite text editor on Linux is vi. Here is a tutorial of vi. 4. How to compile and run a C program on Linux Here is an example of compiling and executing a C program (prog.c) on Linux (such as babbage.cs.missouri.edu): Compile a program (prog.c): $gcc prog.c -o prog The name of the output executable is prog. Run a binary program: $./prog Here is a short tutorial about gcc. 5. An open-source, cross-platform integrative development environment (IDE): CodeBlock, where you can write, compile, run and debug C/C++ programs.