George Mason University

Skip Navigation

CSI 603:
Introduction to Scientific Programming I

General Information


Fernando E. Camelli
Phone: 703-993-4073


  • CSI 601
  • OR Permission of Instructor.


CSI603 introduces programming in C. This course emphasizes in the application of the lengauge rather than in theory. We will present the basics of C programming with examples and applications to scientific problems.


  • Week 1: Introduction, Course overview, Statements, Program Structure, Comments, Identifiers, Variables, Compilation, Makefile review.
  • Week 2: Control flow, statements and blocks, if-else, else-if, switch, loops - while and for, loops - do - while, break and continue.
  • Week 3: Functions and program structure, Basics of functions, return variables, external variables, scope, header files, static variables, recursion, C preprocessor.
  • Week 4: Pointers and Arrays.
  • Week 5: Structures, Typedefs, Unions.
  • week 6: IO, review.
  • week 7: Exam day.

Recommended Bibliography

  • C Programming Language (Second Edition) by B. W. Kernighan and D. M. Ritchie
  • Algorithms in C (Third Edition) by R. Sedgewick
  • C Programming: A Modern Approach by K. N. King
  • Memory as a Programming Concept in C and C++ by F. Franek

Honor Code

As in any class, you are allowed to study with other students. However, tests and homework assignments (unless otherwise specified) must be completed on your own. SPECIFICALLY - YOU MAY NOT COPY ANY TEXT OR MATERIAL AND REPRESENT IT AS YOUR OWN WORK. For both papers and for code, you may reference or link to other peoples work (if it is consistent with the assignment), but you MUST cite the source it came from. Failure to follow these guidelines will be considered a violation of GMU's academic honor code and will be treated as such.

Class Material

  1. Access Only for Students (Private)