CSE 251 Programming in C

Spring, 2014

Andrew Christlieb, instructor, christli@msu.edu

This is the home page for CSE 251 Programming in C.. This course is an introduction to the C programming language and programming in the Unix environment.

This 1 hour class will cover the basics of using the C language and its associated tools for general purpose, scientific and engineering applications, including:

As this is only a 1 credit hour course, we will be lecturing at the computer in Room 3353 in the Engineering Building. The time will be spent both doing lecture and doing hands-on programming/lab work.

The course syllabus is available as pdf file.

Course resources

01-06-14 AND 01-10-14 1. Getting Started  Powerpoint StepStep    
01-13-14 AND 01-17-14 2. Introducing C Powerpoint StepStep   Read Chapters 1-5, 7-9 (Pages 5-57, 71-99)
01-27-14 AND 01-24-14 3. Flow Control and Booleans Powerpoint StepStep   Read Chapters 10-13 (Pages 103-143)
02-03-14 AND 01-31-14 4. Looping and Repetition Powerpoint StepStep   Read Chapters 14-17 (Pages 149-183)
02-10-14 AND 02-07-14 5. no lecture   StepStep   Read Chapters 18, 20 (Pages 187-195, 207-216)
02-17-14 AND 02-14-14 6. Functions Powerpoint StepStep   Read Chapters 30-32 (Pages 331-364)
02-24-14 AND 02-21-14 7. Pointers and Reference Parameters Powerpoint StepStep   Read Chapters 24-25 (Pages 255-274)
03-10-14 AND 02-28-14 8. Arrays Powerpoint StepStep Read Chapters 21-23 (Pages 221-252)
03-17-14 AND 03-14-14 9. Strings and File I/O Powerpoint StepStep Read Chapters 6, 19, 28, 29 (Pages 59-68, 197-204, 307-327)
03-24-14 AND 03-21-14 10. States and State Machines Powerpoint StepStep  
03-31-14 AND 03-28-14 11. Pointers, Arrays, Multidimensional Arrays Powerpoint StepStep
04-07-14 AND 04-04-14 12. Compilation and Makefiles Powerpoint StepStep
04-14-14 AND 04-10-14 13. struct Powerpoint StepStep Read Chapters 27 (Pages 293-303)
04-21-14 AND 04-18-14 14. Dynamic Memory Allocation Powerpoint StepStep Read Chapters 26 (Pages 277-289)

Steps

Step assignments are now included in the section above.

Projects
 

  • Project 1 - Integral of sinc function Assigned (Monday Class) 02-03-14 AND (Friday Class)01-31-14, Due (Monday Class) 02-17-14 AND (Friday Class)02-14-14
  • Project 2 - Elevator embedded systemAssigned (Monday Class) 03-17-14 AND (Friday Class) 03-14-14 Part A Due (Monday Class) 03-31-14 AND (Friday Class) 03-28-14. Part B Due (Monday Class) 04-14-14 AND (Friday Class) 04-10-14.
  • Project 3 - An Event SchedulerAssigned (Monday Class) 04-14-14 AND (Friday Class) 04-10-14, (both classes) Due: 04-30-14