Credits: 2


Prerequisite: Permission of ENGR-Electrical & Computer Engineering department.
Restriction: Must be in Engineering: Electrical program; or must be in Engineering: Materials Science program.
Introduction to the programming environment: editing, compiling, UNIX, data types and variable scope; program selection, formatted/unformatted input/output, repetition, functions, arrays and strings.

Semesters Offered

Fall 2017, Spring 2018, Fall 2018, Spring 2019, Fall 2019, Spring 2020, Fall 2020, Spring 2021, Fall 2021, Spring 2022, Fall 2022, Spring 2023

Learning Objectives

  • Ability to use UNIX as the operating system for text editing, file management, and programming
  • Elementary programming concepts (e.g. program selection, repetition, and functions)
  • Fundamental concepts in data structure (e.g. data type, array, string, search, and sort)
  • Ability to analyze a given code, debug it, and predict its output
  • Ability to write a code to implement algorithms or solve problems

Topics Covered

  • Programming environment in UNIX
  • Problem solving by programming
  • Data types and variable scopes
  • Program selections (if, if-else, switch)
  • Repetition (for, do-while)
  • Functions
  • Formatted input/output, file input/output
  • Arrays
  • Strings

Learning Outcomes

  • Ability to apply knowledge of mathematics, science, and engineering (Moderate)
  • Ability to design a system, component, or process to meet desired needs (Significant)
  • Ability to to identify, formulate, and solve engineering problems (Significant)
  • Recognition of the need for, and an ability to engage in life-long learning (Significant)
  • Ability to use the techniques, skills, and modern engineering tools necessary for engineering practice (Significant)