Course CSE130
Title Introduction to Programming in C
Credits 3
Course Coordinator

Erez Zadok


Introduces programming concepts using the C language. Variables, data types, and expressions. Conditional and iterative statements, functions, and structures. Pointers, arrays, and strings. Scope of variables and program organization. Includes programming projects of an interdisciplinary nature. Suitable as an introductory programming course for non-CSE majors.

Bulletin Link


Level 3 or higher on the mathematics placement examination

Course Outcomes
  • Write, compile and run (on his or her own) 8-10 computer programs in C that utilize basic features of the programming language to solve various introductory problems from mathematics, the sciences and text processing.
  • Determine if any elementary C program is correct given some initial input, and if not, demonstrate where to find the computational error(s).
  • Write small programs in an exam environment to demonstrate his or her problem-solving abilities and proficiency with the language syntax.

  • Programming in C, by Stephan Kochan, Third Ed, 2004, Sams Publishing, ISBN 0-672-32666-3

Major Topics Covered in Course
  • Introduction to course.
  • Variables, data types, compiling and running a program.
  • Expressions, basic input/output in C.
  • Using conditional statements: if, else and switch.
  • Using loop (iteration) statements: while and do-while.
  • Using loop (iteration) statements: for.
  • Introduction to pointers.
  • Using functions, parameter passing.
  • Using structures.
  • Storage classes and scope rules.
  • Program organization.
  • Introduction to arrays.
  • The relationship between arrays and pointers.
  • Strings, C functions for strings.
  • Arrays of pointers, multidimensional arrays.

Laboratory Projects
  • 1 week: compile a simple existing C program, demonstrating syntax, runtime, and logical errors.
  • 2 weeks: write an interactive program to input dimensions of a given shape and compute its area.
  • 2 weeks: process an unspecified number of input values.
  • 2 weeks: practice structured programming by using simple functions and call-by-value parameter passing.
  • 2 weeks: character processing and dealing with end-of-file character.
  • 2 weeks: program that keeps sales data in a store for past years, and then computes and prints statistics sorted by the given order.
  • 2 weeks: write a program that formats a text with limited word processing options.
  • 2 weeks: Design a large program involving text files and structures.

Course Webpage