CS 240: Programming in C -- Summer 2020

Moday, Tuesday & Thursday 05:30PM-07:00PM

Welcome to the exciting world of programming in C!

This page provides information on the CS 240 course for the summer semester of 2020. Please come back regularly during and after the course to check for updates on class notes, assignment deadlines, office hours etc. Note that we will have the blackboard for online discussions and announcement.


Online Classroom:

https://umassboston.zoom.us/j/7395068587
Piaaza-CS240-Summer2020
Please sign in to our Piaaza class for announcements and discussions.
If you are not permitted to sign in, send me an email, I will sign you in.

Instrcutor:

Haoyu Wang
Email: haoyu.wang001@umb.edu
Office location: Online Classroom
Office hours: 4:45-5:30 PM Mon, Tue and Thu or by appointment


Course Description:

C programming is a general-purpose, procedural, imperative computer programming language developed in 1972 by Dennis M. Ritchie at the Bell Telephone Laboratories to develop the UNIX operating system. C is presented as both ageneral-purpose and machine-level language, mostly used for writing system programs.

Topics covered include: representation of integer and characterdata, bitwise operations, masking, memory allocation methods, pointers, dynamic data structures, file I/O,separate compilation, program development tools and use of debuggers.No courses required by the CS major, minor, or certificate may be taken pass/fail.

Textbook:

Brian Kernighan and Dennis Ritchie, The C Programming Language, 2nd Edition
Kimberly Nelson King, C Programming: A Modern Approach

Getting Ready: New

1, Setup C development on your home PC. DevelopmentSetup

Evaluation:

The total score consists of the following:

40%: Five of six homework assignments, 8% each. (Drop lowest homework)

60%: Three tests, 30% each for the best two tests.

The total score is converted to a letter grade according to the following grades table



Assignments:

Homeworks (PDF) Posted on Due Date
Homework #1 Code Stub #1
June 01 23:59PM, June 11
Homework #2
Code Stub #2
June 03 23:59, June 16
Homework #3
Code Stub #3
June 09 23:59, June 22
Practice Exam #1
-- --
Homework #4
Code Stub #4
June 24 23:59, July 09
Homework #5
Code Stub #5
June 29 23:59, July 12
Practice Exam #2
Code Stub
-- --
Homework #6
Code Stub #6
July 11 23:59, July 22
Practice Exam #3
Code Stub
-- --



Class Sessions :

Index Session Dates Topics Slides Sample Code
1 Tue, May 26 Introduction Video Recording 1 (Password: 8x=qc35?) Slides #1 -
2 Thu, May 28 Get Started Video Recording 2 (Password: 9P$kW2G5) Slides #2 --
3 Mon, June 1 Variables and Constants
Video Recording 3 (Password: 3B@#cZY4)
Slides #3 Code Samples
4 Thu, June 2 Arrays and Control Flow
Video Recording 4 (Password: 6s%6S!A@)
Slides #4 Code Samples
5 Thu, June 4 Function
Video Recording 5 (Password: 3l$0@U0r)
Slides #5 Code Samples
6 Mon, June 08 Header Files
Video Recording 6 (Password: 1a^xz.%*)
Slides #6 Code Samples
7 Tue, June 09 Intro GDB, Bitwise Operator
Video Recording 7 (Password: 3E%B77+9)
Slides #7 Code Samples
8 Thu, June 09 Recursion, Element Sorting
Video Recording 8 (Password: 8V*l!!$0)
Slides #8 Code Samples
9 Mon, June 15 Test1 -- --
9 Tue, June 16 Merge Sorting
Video Recording 9 (Password: 3S!0f^!#)
Slides #10 Code Samples
11 Thu, June 18 Intro to Pointer
Video Recording 11 (Password: 6k.7+1#$)
Slides #11 Code Samples
12 Mon, June 22 Pointer
Video Recording 12 (Password: 4I^6w0?j)
Slides #12 Code Samples
13 Thu, June 23 Dynamic Memory Allocation
Video Recording 12 (Password: 8u?L^55#)
Slides #13 Code Samples
14 Thu, June 25 Function Pointer, Struct
Video Recording 12 (Password: 9n@9.HU^)
Slides #14 Code Samples
15 Mon, June 29 Function Pointer, Struct
Video Recording 12 ( Password: 3s%*2$1+
Slides #15 Code Samples
16 Tue, June 30 Enum,Review
Video Recording 12 (Password: 9c?C2G8&)
Slides #16 Code Samples
17 Tue, July 06 Dynamic Linking and Loading
Video Recording 17 (Password: 4b%4IN19)
Slides #17 Code Samples
18 Tue, July 07 Stack, Queue
Video Recording 18 ( Password: 0R+%Ni2%)
Slides #18 Code Samples
19 Tue, July 07 Stack, Queue
Video Recording 19 ( Password: 7v=&NB0J)
Slides #19 Code Samples
20 Mon, July 13 Errno
Video Recording 20 ( Password: 5h#w48g7)
Slides #20 Code Samples
21 Tue, July 14 LinkedList
Video Recording 20 ( Password: 1N+1D9&3)
Slides #20 Code Samples
22 Thu, July 14 Review
Video Recording 20 ( Password: 8g?73g4e)
Slides #20 Code Samples











Accommodations:

Section 504 of the Americans with Disabilities Act of 1990 offers guidelines for curriculum modifications and adaptations for students with documented disabilities. If applicable, students may obtain adaptation recommendations from the Ross Center for Disability Services, Campus Center, UL Room 211, (617-287-7430). The student must present these recommendations and discuss them with each professor within a reasonable period, preferably by the end of Drop/Add period.

Student Conduct:

Students are required to adhere to the University Policy on Academic Standards and Cheating, to the University Statement on Plagiarism and the Documentation of Written Work, and to the Code of Student Conduct as delineated in the catalog of Undergraduate Programs. The Code is available online at:life_on_campus/student_conduct