University of Colorado at Boulder
University of Colorado at Boulder Search A to Z Campus Map CU Search Links
ECE Home
Course List
Contact Us

ECEN 1310 - C Programming for EE/ECE

Catalog Data ECEN 1310 (4). C Programming for EE/ECE. Introduces fundamental programming concepts with engineering applications using C at a lower and more detailed level and Matlab at a higher more application focused level. Pointers, control, and various data types are treated within the context of the C programming language. Examples of signal processing, polynomials and curve fitting are presented using Matlab. The course includes a weekly computer lab session.
Credits and Design 4 credit hours: 3 hours of lecture and 2 hours of lab per week. Required core course.
Prerequisite(s) None.
Corequisite(s) None.
Instructor(s) Ruth Dameron, Andrew Pleszkun, Fabio Somenzi.
Textbook Aaron Bradley, Programming for Engineers: A Foundational Approach to Learning C and Matlab, Springer, 2011, ISBN-13 978-3642233029.
Course Objectives For students to:
  1. Understand how data is input, represented, processed, and stored in a computer from a programmer's perspective.
  2. Understand how to design, write, and debug programs in a logical, efficient, structured, readable, and testable fashion.
  3. Understand how to translate engineering problems into computer programs and how to test and interpret the results.
Learning Outcomes After taking this course students will be able to recognize and use the following concepts, ideas, and/or tools:
  1. Memory, pointers, and control, including model for stack memory and use of conditionals, loops, and recursion. of stack, .
  2. Arrays, strings, and input/output, including array indexing, string manipulation, reading data from stdin and printing data to stdout.
  3. Abstract data types, including type definitions, memory allocation and release, and data storage and retrieval using FIFOs and LIFOs.
  4. Engineering applications in Matlab, including plynomials and polynomial data fitting, plotting, and elementary signal processing.
Student Outcomes
3a 3b 3c 3d 3e 3f 3g1 3g2 3h 3i 3j 3k
Design Teams Engr
Oral Written Engr Solns
M L H   M             M
Topics Covered
  1. Memory: The stack
  2. Control
  3. Arrays and strings
  4. Debugging
  5. Input/output
  6. Memory: The heap
  7. Abstract data types
  8. FIFO and LIFO buffers
  9. Introduction to Matlab
  10. Exploring polynomials and curve fitting with Matlab
  11. Eploring time and frequency domains with Matlab

Last revised: 05-10-11, PM, ARP.