CS 240 Spring 2017


News | Calendar | Resources | Instructor | Textbook |
CS 240 Programming in C - University of Massachusetts Boston

Announcements

January 23 The course syllabus is posted here. Homework assignments are posted in /courses/cs240/s18/kamaral/GROUP/.
Students should apply for CS 240 UNIX accounts at CS Portal ASAP.



Lecture, Reading, Homework and Exam schedule

Homework and programming assignments are posted on the dates shown.

Wk Date Lecture Topic Recommended Reading Homework Exam
1 01/23/18 Tu Course overview, Syllabus, Introduction, vi Editor G&A ch. 1, 2
K&R ch. 1.1
Homework #1
01/25/18 Th Unix System Fundamentals, and Homework 1 Breakdown slides G&A ch. 1, 2
K&R ch. 1.1
2 01/30/18 Tu Program Breakdown, Variables, Types, Control Flow, and Input/Output slides
Homework #2
02/01/18 Th Bases and Representations, Memory, Pointers, Arrays, For-Loops slides
3 02/06/18 Tu Strings, Line-by-line I/O, Functions, Call-by-Reference, Call-by-Value, Casting and Negative Numbers slides
Homework #3
02/08/18 Th Scope of Variables, The Stack, Automatic Variables, Global Variables slides
4 02/13/18 Tu Files I/O, Streams, I/O Redirection, Reading with fscanf slides
Homework #4
02/15/18 Th Boolean Operations, Increment and Decrement Operators, Constant Types, enum Types, Precedence slides
5 02/20/18 Tu Bitwise Operations, Bit Manipulation, Type Conversion, Conditional Expression slides
02/22/18 Th Bit Shift Operations, Assignment Expressions, Modulo Operator, Converting Numeric Types to Strings slides
6 02/27/18 Tu Common C Programming Errors, GDB Debugging slides
Homework #5
03/01/18 Th Pseudocode slides in-class example
7 03/06/18 Tu
Exam Review Session for Exam #1
Practice Exam #1
03/08/18 Th
EXAM #1 Cancelled
8 03/13/18 Tu
Spring Break
03/15/18 Th
9 03/20/18 Tu
Cancelled
03/22/18 Th
EXAM #1
10 03/27/18 Tu Switch Statements, Do While, Break, Continue, Goto, Comma Operator first set of slides
Register Variables, Macros, Conditional Inclusion second set of slides
Homework #6
03/29/18 Th Recursion, Tail Recursion slides
11 04/03/18 Tu Larger Projects, Object Files, Prototyping, Header Files, Make Files slides
04/05/18 Th Stack Data Structure, Reverse Polish Notation, Homework 7 slides
Homework #7
12 04/10/18 Tu Structs, Struct Arrays, Struct Pointers, sizeof, malloc, free, void pointer slides
04/12/18 Th Circular Buffers, Linked Lists slides
13 04/17/18 Tu Command-line Arguments, Typedef, Union, Bit Fields slides
04/19/18 Th Going over Exam #1 and Course Evaluations
Practice Exam #2
14 04/24/18 Tu
Exam Review Session for Exam #2
04/26/18 Th
EXAM #2
15 05/01/18 Tu Serialization, Pointers to Arrays, Arrays of Arrays, Floating Point Numbers slides
Homework #8
05/03/18 Th System function, Math Library, Function Pointers, Random Number Generators, Built-in qsort and binary search with Function Pointers, Variable Length Variables slides
16 05/08/18 Tu Malloc Implementation slides projector
Homework #9
Practice Final
05/10/18 Th
Study Period: No Class



Past Lectures by Professor Cheung

Professor Cheung, Lecture 1
Professor Cheung, Lecture 2
Professor Cheung, Lecture 3
Professor Cheung, Lecture 4
Professor Cheung, Lecture 5
Professor Cheung, Lecture 6
Professor Cheung, Lecture 7
Professor Cheung, Lecture 8
Professor Cheung, Lecture 9
Professor Cheung, Lecture 10
Professor Cheung, Lecture 11
Professor Cheung, Lecture 12
Professor Cheung, Lecture 13
Professor Cheung, Lecture 14
Professor Cheung, Lecture 15
Professor Cheung, Lecture 16
Professor Cheung, Lecture 17
Professor Cheung, Lecture 18



Instructor

Kevin Amaral; Rm S-4-26 (kamaral@cs.umb.edu)

Office hours: Pending




Recommended Texts

The C Programming Language, 2nd Edition, Kernighan & Ritchie, Prentice Hall

LINUX for Programmers and Users, 1st Edition, Graham Glass & King Ables, Prentice Hall


For reference:
C Programming for Scientists and Engineers with Applications, 1st Edition, Rama Reddy and Carol Ziegler, Jones and Bartlett

Resources

Basic Unix for Computer Science Students
C Coding Standard for this course
C Language Quick-Reference Guide
Basic vi Commands
ASCII Code Chart
GDB Quick Reference Guide
A tutorial on pointers and structs
C library reference
Specification document for C langauge
Lecture notes are available in Powerpoint format.

CS240 class web page
(Last Updated: 03/01/2018)